home *** CD-ROM | disk | FTP | other *** search
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was processed as: LaTeX Document
(document/latex).
You can browse this item here: Reference1.tex
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| dexvert
| LaTeX Document (document/latex)
| magic
| Supported |
1%
| dexvert
| Corel 10 Texture (image/corel10Texture)
| ext
| Unsupported |
1%
| dexvert
| Croteam texture file (image/croteamTextureFile)
| ext
| Unsupported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| LaTeX document text
| default
| |
99%
| file
| LaTeX document, ASCII text
| default
| |
100%
| checkBytes
| Printable ASCII
| default
| |
100%
| perlTextCheck
| Likely Text (Perl)
| default
| |
100%
| siegfried
| fmt/281 LaTeX (Subdocument)
| default
| |
100%
| detectItEasy
| Format: plain text[LF]
| default (weak)
| |
100%
| xdgMime
| text/x-matlab
| default (weak)
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 25 0a 25 20 53 54 6b 20 | 52 65 66 65 72 65 6e 63 |%.% STk |Referenc|
|00000010| 65 20 6d 61 6e 75 61 6c | 20 28 50 61 72 74 20 31 |e manual| (Part 1|
|00000020| 29 0a 25 0a 25 20 20 20 | 20 20 20 20 20 20 20 20 |).%.% | |
|00000030| 41 75 74 68 6f 72 3a 20 | 45 72 69 63 6b 20 47 61 |Author: |Erick Ga|
|00000040| 6c 6c 65 73 69 6f 20 5b | 65 67 40 75 6e 69 63 65 |llesio [|eg@unice|
|00000050| 2e 66 72 5d 0a 25 20 20 | 20 20 43 72 65 61 74 69 |.fr].% | Creati|
|00000060| 6f 6e 20 64 61 74 65 3a | 20 3f 3f 2d 4e 6f 76 2d |on date:| ??-Nov-|
|00000070| 31 39 39 33 20 3f 3f 3a | 3f 3f 0a 25 20 4c 61 73 |1993 ??:|??.% Las|
|00000080| 74 20 66 69 6c 65 20 75 | 70 64 61 74 65 3a 20 32 |t file u|pdate: 2|
|00000090| 34 2d 4a 75 6c 2d 31 39 | 39 36 20 31 33 3a 33 38 |4-Jul-19|96 13:38|
|000000a0| 0a 25 0a 0a 5c 73 65 63 | 74 69 6f 6e 2a 7b 49 6e |.%..\sec|tion*{In|
|000000b0| 74 72 6f 64 75 63 74 69 | 6f 6e 7d 0a 0a 54 68 69 |troducti|on}..Thi|
|000000c0| 73 20 64 6f 63 75 6d 65 | 6e 74 20 70 72 6f 76 69 |s docume|nt provi|
|000000d0| 64 65 73 20 61 20 63 6f | 6d 70 6c 65 74 65 20 6c |des a co|mplete l|
|000000e0| 69 73 74 20 6f 66 20 70 | 72 6f 63 65 64 75 72 65 |ist of p|rocedure|
|000000f0| 73 20 61 6e 64 20 73 70 | 65 63 69 61 6c 20 66 6f |s and sp|ecial fo|
|00000100| 72 6d 73 0a 69 6d 70 6c | 65 6d 65 6e 74 65 64 20 |rms.impl|emented |
|00000110| 69 6e 20 76 65 72 73 69 | 6f 6e 20 7b 5c 73 74 6b |in versi|on {\stk|
|00000120| 76 65 72 73 69 6f 6e 7d | 20 6f 66 20 7b 5c 73 74 |version}| of {\st|
|00000130| 6b 7d 2e 20 53 69 6e 63 | 65 20 7b 5c 73 74 6b 7d |k}. Sinc|e {\stk}|
|00000140| 20 69 73 20 28 6e 65 61 | 72 6c 79 29 20 0a 63 6f | is (nea|rly) .co|
|00000150| 6d 70 6c 69 61 6e 74 20 | 77 69 74 68 20 74 68 65 |mpliant |with the|
|00000160| 20 6c 61 6e 67 75 61 67 | 65 20 64 65 73 63 72 69 | languag|e descri|
|00000170| 62 65 64 20 69 6e 20 74 | 68 65 20 7b 5c 65 6d 20 |bed in t|he {\em |
|00000180| 52 65 76 69 73 65 64 24 | 5e 7b 34 7d 24 20 52 65 |Revised$|^{4}$ Re|
|00000190| 70 6f 72 74 20 6f 6e 20 | 74 68 65 0a 41 6c 67 6f |port on |the.Algo|
|000001a0| 72 69 74 68 6d 69 63 20 | 4c 61 6e 67 75 61 67 65 |rithmic |Language|
|000001b0| 20 53 63 68 65 6d 65 7d | 20 5c 6d 61 69 6e 69 6e | Scheme}| \mainin|
|000001c0| 64 65 78 7b 52 34 52 53 | 7d 28 64 65 6e 6f 74 65 |dex{R4RS|}(denote|
|000001d0| 64 20 7b 5c 72 72 72 72 | 7d 20 68 65 72 65 61 66 |d {\rrrr|} hereaf|
|000001e0| 74 65 72 7b 5c 66 6f 6f | 74 6e 6f 74 65 7b 54 68 |ter{\foo|tnote{Th|
|000001f0| 65 20 7b 5c 65 6d 0a 52 | 65 76 69 73 65 64 24 5e |e {\em.R|evised$^|
|00000200| 7b 34 7d 24 20 52 65 70 | 6f 72 74 20 6f 6e 20 74 |{4}$ Rep|ort on t|
|00000210| 68 65 20 41 6c 67 6f 72 | 69 74 68 6d 69 63 20 4c |he Algor|ithmic L|
|00000220| 61 6e 67 75 61 67 65 20 | 53 63 68 65 6d 65 7d 20 |anguage |Scheme} |
|00000230| 69 73 20 61 76 61 69 6c | 61 62 6c 65 0a 74 68 72 |is avail|able.thr|
|00000240| 6f 75 67 68 20 61 6e 6f | 6e 79 6d 6f 75 73 20 46 |ough ano|nymous F|
|00000250| 54 50 20 66 72 6f 6d 20 | 7b 5c 74 74 20 66 74 70 |TP from |{\tt ftp|
|00000260| 2e 63 73 2e 69 6e 64 69 | 61 6e 61 2e 65 64 75 7d |.cs.indi|ana.edu}|
|00000270| 20 69 6e 20 74 68 65 20 | 64 69 72 65 63 74 6f 72 | in the |director|
|00000280| 79 0a 7b 5c 74 74 20 2f | 70 75 62 2f 73 63 68 65 |y.{\tt /|pub/sche|
|00000290| 6d 65 2d 72 65 70 6f 73 | 69 74 6f 72 79 2f 64 6f |me-repos|itory/do|
|000002a0| 63 7d 7d 7d 29 5c 63 69 | 74 65 7b 52 34 52 53 7d |c}}})\ci|te{R4RS}|
|000002b0| 2c 20 74 68 65 20 6f 72 | 67 61 6e 69 7a 61 74 69 |, the or|ganizati|
|000002c0| 6f 6e 20 6f 66 0a 74 68 | 69 73 20 6d 61 6e 75 61 |on of.th|is manua|
|000002d0| 6c 20 66 6f 6c 6c 6f 77 | 73 20 74 68 65 20 7b 5c |l follow|s the {\|
|000002e0| 72 72 72 72 7d 20 61 6e | 64 20 6f 6e 6c 79 20 64 |rrrr} an|d only d|
|000002f0| 65 73 63 72 69 62 65 73 | 20 65 78 74 65 6e 73 69 |escribes| extensi|
|00000300| 6f 6e 73 2e 0a 0a 5c 73 | 65 63 74 69 6f 6e 7b 4f |ons...\s|ection{O|
|00000310| 76 65 72 76 69 65 77 20 | 6f 66 20 5c 73 74 6b 7d |verview |of \stk}|
|00000320| 0a 0a 54 6f 64 61 79 27 | 73 20 67 72 61 70 68 69 |..Today'|s graphi|
|00000330| 63 61 6c 20 74 6f 6f 6c | 6b 69 74 73 20 66 6f 72 |cal tool|kits for|
|00000340| 20 61 70 70 6c 69 63 61 | 74 69 76 65 20 6c 61 6e | applica|tive lan|
|00000350| 67 75 61 67 65 73 20 61 | 72 65 20 6f 66 74 65 6e |guages a|re often|
|00000360| 20 6e 6f 74 0a 73 61 74 | 69 73 66 61 63 74 6f 72 | not.sat|isfactor|
|00000370| 79 2e 20 4d 6f 73 74 20 | 6f 66 20 74 68 65 20 74 |y. Most |of the t|
|00000380| 69 6d 65 2c 20 74 68 65 | 79 20 61 73 6b 20 74 68 |ime, the|y ask th|
|00000390| 65 20 75 73 65 72 20 74 | 6f 20 62 65 20 61 6e 20 |e user t|o be an |
|000003a0| 58 20 77 69 6e 64 6f 77 | 20 73 79 73 74 65 6d 0a |X window| system.|
|000003b0| 5c 6d 61 69 6e 69 6e 64 | 65 78 7b 58 20 77 69 6e |\mainind|ex{X win|
|000003c0| 64 6f 77 20 73 79 73 74 | 65 6d 7d 20 65 78 70 65 |dow syst|em} expe|
|000003d0| 72 74 20 61 6e 64 20 66 | 6f 72 63 65 20 68 69 6d |rt and f|orce him|
|000003e0| 2f 68 65 72 20 74 6f 20 | 63 6f 70 65 20 77 69 74 |/her to |cope wit|
|000003f0| 68 20 61 72 63 61 6e 65 | 0a 64 65 74 61 69 6c 73 |h arcane|.details|
|00000400| 20 73 75 63 68 20 61 73 | 20 73 65 72 76 65 72 20 | such as| server |
|00000410| 63 6f 6e 6e 65 63 74 69 | 6f 6e 73 20 61 6e 64 20 |connecti|ons and |
|00000420| 65 76 65 6e 74 20 71 75 | 65 75 65 73 2e 20 54 68 |event qu|eues. Th|
|00000430| 69 73 20 69 73 20 61 20 | 72 65 61 6c 0a 70 72 6f |is is a |real.pro|
|00000440| 62 6c 65 6d 2c 20 73 69 | 6e 63 65 20 70 72 6f 67 |blem, si|nce prog|
|00000450| 72 61 6d 6d 65 72 73 20 | 75 73 69 6e 67 20 74 68 |rammers |using th|
|00000460| 69 73 20 6b 69 6e 64 20 | 6f 66 20 6c 61 6e 67 75 |is kind |of langu|
|00000470| 61 67 65 73 20 61 72 65 | 20 67 65 6e 65 72 61 6c |ages are| general|
|00000480| 6c 79 20 6e 6f 74 0a 69 | 6e 63 6c 69 6e 65 64 20 |ly not.i|nclined |
|00000490| 74 6f 20 73 79 73 74 65 | 6d 20 70 72 6f 67 72 61 |to syste|m progra|
|000004a0| 6d 6d 69 6e 67 2c 20 61 | 6e 64 20 66 65 77 20 6f |mming, a|nd few o|
|000004b0| 66 20 74 68 65 6d 20 77 | 69 6c 6c 20 62 72 69 64 |f them w|ill brid|
|000004c0| 67 65 20 74 68 65 20 67 | 61 70 20 62 65 74 77 65 |ge the g|ap betwe|
|000004d0| 65 6e 0a 74 68 65 20 64 | 69 66 66 65 72 65 6e 74 |en.the d|ifferent|
|000004e0| 20 61 62 73 74 72 61 63 | 74 69 6f 6e 20 6c 65 76 | abstrac|tion lev|
|000004f0| 65 6c 73 2e 0a 0a 0a 7e | 7e 7e 7e 54 6b 5c 69 6e |els....~|~~~Tk\in|
|00000500| 64 65 78 7b 54 6b 20 74 | 6f 6f 6c 6b 69 74 7d 5c |dex{Tk t|oolkit}\|
|00000510| 69 6e 64 65 78 7b 74 6f | 6f 6c 6b 69 74 7d 20 69 |index{to|olkit} i|
|00000520| 73 20 61 20 70 6f 77 65 | 72 66 75 6c 20 67 72 61 |s a powe|rful gra|
|00000530| 70 68 69 63 61 6c 20 74 | 6f 6f 6c 5c 2d 6b 69 74 |phical t|ool\-kit|
|00000540| 0a 70 72 6f 6d 69 73 69 | 6e 67 20 74 6f 20 66 69 |.promisi|ng to fi|
|00000550| 6c 6c 20 74 68 61 74 20 | 67 61 70 2e 20 49 74 20 |ll that |gap. It |
|00000560| 77 61 73 20 64 65 76 65 | 6c 6f 70 65 64 20 61 74 |was deve|loped at|
|00000570| 20 74 68 65 20 55 6e 69 | 76 65 72 73 69 74 79 20 | the Uni|versity |
|00000580| 6f 66 20 42 65 72 6b 65 | 6c 65 79 0a 62 79 20 4a |of Berke|ley.by J|
|00000590| 6f 68 6e 20 4f 75 73 74 | 65 72 68 6f 75 74 7e 5c |ohn Oust|erhout~\|
|000005a0| 63 69 74 65 7b 4f 75 73 | 74 65 72 2d 54 6b 7d 2e |cite{Ous|ter-Tk}.|
|000005b0| 20 54 68 65 20 74 6f 6f | 6c 6b 69 74 20 6f 66 66 | The too|lkit off|
|000005c0| 65 72 73 20 68 69 67 68 | 20 6c 65 76 65 6c 20 77 |ers high| level w|
|000005d0| 69 64 67 65 74 73 0a 73 | 75 63 68 20 61 73 20 62 |idgets.s|uch as b|
|000005e0| 75 74 74 6f 6e 73 20 6f | 72 20 6d 65 6e 75 73 20 |uttons o|r menus |
|000005f0| 61 6e 64 20 69 73 20 65 | 61 73 69 6c 79 20 70 72 |and is e|asily pr|
|00000600| 6f 67 72 61 6d 6d 61 62 | 6c 65 2c 20 72 65 71 75 |ogrammab|le, requ|
|00000610| 69 72 69 6e 67 20 6c 69 | 74 74 6c 65 0a 6b 6e 6f |iring li|ttle.kno|
|00000620| 77 6c 65 64 67 65 20 6f | 66 20 58 20 66 75 6e 64 |wledge o|f X fund|
|00000630| 61 6d 65 6e 74 61 6c 73 | 2e 20 54 6b 20 72 65 6c |amentals|. Tk rel|
|00000640| 69 65 73 20 6f 6e 20 61 | 6e 20 69 6e 74 65 72 70 |ies on a|n interp|
|00000650| 72 65 74 61 74 69 76 65 | 20 73 68 65 6c 6c 2d 6c |retative| shell-l|
|00000660| 69 6b 65 0a 6c 61 6e 67 | 75 61 67 65 20 6e 61 6d |ike.lang|uage nam|
|00000670| 65 64 20 54 63 6c 7e 5c | 63 69 74 65 7b 4f 75 73 |ed Tcl~\|cite{Ous|
|00000680| 74 65 72 2d 54 63 6c 7d | 2e 0a 0a 7e 7e 7e 7e 7b |ter-Tcl}|...~~~~{|
|00000690| 5c 73 74 6b 7d 20 69 73 | 20 61 6e 20 69 6d 70 6c |\stk} is| an impl|
|000006a0| 65 6d 65 6e 74 61 74 69 | 6f 6e 20 6f 66 20 74 68 |ementati|on of th|
|000006b0| 65 20 53 63 68 65 6d 65 | 20 70 72 6f 67 72 61 6d |e Scheme| program|
|000006c0| 6d 69 6e 67 20 6c 61 6e | 67 75 61 67 65 2c 0a 70 |ming lan|guage,.p|
|000006d0| 72 6f 76 69 64 69 6e 67 | 20 61 20 66 75 6c 6c 20 |roviding| a full |
|000006e0| 69 6e 74 65 67 72 61 74 | 69 6f 6e 20 6f 66 20 74 |integrat|ion of t|
|000006f0| 68 65 20 54 6b 20 74 6f | 6f 6c 6b 69 74 2e 20 49 |he Tk to|olkit. I|
|00000700| 6e 20 74 68 69 73 20 69 | 6d 70 6c 65 6d 65 6e 74 |n this i|mplement|
|00000710| 61 74 69 6f 6e 2c 0a 53 | 63 68 65 6d 65 20 65 73 |ation,.S|cheme es|
|00000720| 74 61 62 6c 69 73 68 65 | 73 20 74 68 65 20 6c 69 |tablishe|s the li|
|00000730| 6e 6b 20 62 65 74 77 65 | 65 6e 20 74 68 65 20 75 |nk betwe|en the u|
|00000740| 73 65 72 20 61 6e 64 20 | 74 68 65 20 54 6b 20 74 |ser and |the Tk t|
|00000750| 6f 6f 6c 6b 69 74 2c 20 | 72 65 70 6c 61 63 69 6e |oolkit, |replacin|
|00000760| 67 0a 54 63 6c 2e 0a 0a | 0a 25 25 25 25 25 25 25 |g.Tcl...|.%%%%%%%|
|00000770| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00000780| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00000790| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|000007a0| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|000007b0| 25 25 25 25 25 25 25 0a | 5c 73 65 63 74 69 6f 6e |%%%%%%%.|\section|
|000007c0| 7b 4c 65 78 69 63 61 6c | 20 63 6f 6e 76 65 6e 74 |{Lexical| convent|
|000007d0| 69 6f 6e 73 7d 0a 0a 5c | 73 75 62 73 65 63 74 69 |ions}..\|subsecti|
|000007e0| 6f 6e 7b 49 64 65 6e 74 | 69 66 69 65 72 73 7d 0a |on{Ident|ifiers}.|
|000007f0| 0a 53 79 6e 74 61 63 74 | 69 63 20 6b 65 79 77 6f |.Syntact|ic keywo|
|00000800| 72 64 73 20 63 61 6e 20 | 62 65 20 75 73 65 64 20 |rds can |be used |
|00000810| 61 73 20 76 61 72 69 61 | 62 6c 65 73 20 69 6e 20 |as varia|bles in |
|00000820| 5c 73 74 6b 2e 20 55 73 | 65 72 73 20 6d 75 73 74 |\stk. Us|ers must|
|00000830| 20 62 65 0a 61 77 61 72 | 65 20 74 68 61 74 20 74 | be.awar|e that t|
|00000840| 68 69 73 20 65 78 74 65 | 6e 73 69 6f 6e 20 6f 66 |his exte|nsion of|
|00000850| 20 74 68 65 20 6c 61 6e | 67 75 61 67 65 20 63 6f | the lan|guage co|
|00000860| 75 6c 64 20 6c 65 61 64 | 20 74 6f 20 61 6d 62 69 |uld lead| to ambi|
|00000870| 67 75 69 74 69 65 73 20 | 69 6e 0a 73 6f 6d 65 20 |guities |in.some |
|00000880| 73 69 74 75 61 74 69 6f | 6e 73 2e 0a 0a 5c 73 75 |situatio|ns...\su|
|00000890| 62 73 65 63 74 69 6f 6e | 7b 43 6f 6d 6d 65 6e 74 |bsection|{Comment|
|000008a0| 73 7d 0a 0a 41 73 20 69 | 6e 20 74 68 65 20 7b 5c |s}..As i|n the {\|
|000008b0| 72 72 72 72 7d 2c 20 61 | 20 73 65 6d 69 63 6f 6c |rrrr}, a| semicol|
|000008c0| 6f 6e 20 28 3b 29 20 69 | 6e 64 69 63 61 74 65 73 |on (;) i|ndicates|
|000008d0| 20 74 68 65 20 73 74 61 | 72 74 20 6f 66 20 61 20 | the sta|rt of a |
|000008e0| 63 6f 6d 6d 65 6e 74 2e | 0a 49 6e 20 7b 5c 73 74 |comment.|.In {\st|
|000008f0| 6b 7d 2c 20 63 6f 6d 6d | 65 6e 74 73 20 63 61 6e |k}, comm|ents can|
|00000900| 20 61 6c 73 6f 20 62 65 | 20 69 6e 74 72 6f 64 75 | also be| introdu|
|00000910| 63 65 64 20 62 79 20 5c | 73 68 61 72 70 73 69 67 |ced by \|sharpsig|
|00000920| 6e 24 21 24 2e 20 20 54 | 68 69 73 0a 65 78 74 65 |n$!$. T|his.exte|
|00000930| 6e 73 69 6f 6e 20 69 73 | 20 70 61 72 74 69 63 75 |nsion is| particu|
|00000940| 6c 61 72 6c 79 20 75 73 | 65 66 75 6c 20 66 6f 72 |larly us|eful for|
|00000950| 20 62 75 69 6c 64 69 6e | 67 20 7b 5c 73 74 6b 7d | buildin|g {\stk}|
|00000960| 20 73 63 72 69 70 74 73 | 2e 20 4f 6e 20 6d 6f 73 | scripts|. On mos|
|00000970| 74 0a 55 6e 69 78 20 69 | 6d 70 6c 65 6d 65 6e 74 |t.Unix i|mplement|
|00000980| 61 74 69 6f 6e 73 2c 20 | 69 66 20 74 68 65 20 66 |ations, |if the f|
|00000990| 69 72 73 74 20 6c 69 6e | 65 20 6f 66 20 61 20 73 |irst lin|e of a s|
|000009a0| 63 72 69 70 74 20 6c 6f | 6f 6b 73 20 6c 69 6b 65 |cript lo|oks like|
|000009b0| 20 74 68 69 73 3a 0a 5c | 62 65 67 69 6e 7b 73 63 | this:.\|begin{sc|
|000009c0| 68 65 6d 65 7d 0a 5c 73 | 68 61 72 70 73 69 67 6e |heme}.\s|harpsign|
|000009d0| 24 21 24 2f 75 73 72 2f | 6c 6f 63 61 6c 2f 62 69 |$!$/usr/|local/bi|
|000009e0| 6e 2f 73 74 6b 20 2d 66 | 69 6c 65 0a 5c 65 6e 64 |n/stk -f|ile.\end|
|000009f0| 7b 73 63 68 65 6d 65 7d | 0a 74 68 65 6e 20 74 68 |{scheme}|.then th|
|00000a00| 65 20 73 63 72 69 70 74 | 20 63 61 6e 20 62 65 20 |e script| can be |
|00000a10| 73 74 61 72 74 65 64 20 | 64 69 72 65 63 74 6c 79 |started |directly|
|00000a20| 20 61 73 20 69 66 20 69 | 74 20 77 65 72 65 20 61 | as if i|t were a|
|00000a30| 20 62 69 6e 61 72 79 2e | 20 7b 5c 73 74 6b 7d 0a | binary.| {\stk}.|
|00000a40| 69 73 20 6c 6f 61 64 65 | 64 20 62 65 68 69 6e 64 |is loade|d behind|
|00000a50| 20 74 68 65 20 73 63 65 | 6e 65 73 20 61 6e 64 20 | the sce|nes and |
|00000a60| 72 65 61 64 73 20 61 6e | 64 20 65 78 65 63 75 74 |reads an|d execut|
|00000a70| 65 73 20 74 68 65 20 73 | 63 72 69 70 74 20 61 73 |es the s|cript as|
|00000a80| 20 61 0a 53 63 68 65 6d | 65 20 70 72 6f 67 72 61 | a.Schem|e progra|
|00000a90| 6d 2e 20 4f 66 20 63 6f | 75 72 73 65 20 74 68 69 |m. Of co|urse thi|
|00000aa0| 73 20 61 73 73 75 6d 65 | 73 20 74 68 61 74 20 7b |s assume|s that {|
|00000ab0| 5c 73 74 6b 7d 20 69 73 | 20 6c 6f 63 61 74 65 64 |\stk} is| located|
|00000ac0| 20 69 6e 20 7b 5c 74 74 | 0a 20 20 2f 75 73 72 2f | in {\tt|. /usr/|
|00000ad0| 6c 6f 63 61 6c 2f 62 69 | 6e 7d 2e 0a 0a 5c 73 75 |local/bi|n}...\su|
|00000ae0| 62 73 65 63 74 69 6f 6e | 7b 4f 74 68 65 72 20 6e |bsection|{Other n|
|00000af0| 6f 74 61 74 69 6f 6e 73 | 7d 0a 0a 7b 5c 73 74 6b |otations|}..{\stk|
|00000b00| 7d 20 61 63 63 65 70 74 | 73 20 61 6c 6c 20 74 68 |} accept|s all th|
|00000b10| 65 20 6e 6f 74 61 74 69 | 6f 6e 73 20 64 65 66 69 |e notati|ons defi|
|00000b20| 6e 65 64 20 69 6e 20 7b | 5c 72 72 72 72 7d 20 70 |ned in {|\rrrr} p|
|00000b30| 6c 75 73 0a 0a 5c 62 65 | 67 69 6e 7b 64 65 73 63 |lus..\be|gin{desc|
|00000b40| 72 69 70 74 69 6f 6e 7d | 7b 7d 7b 7d 0a 0a 5c 73 |ription}|{}{}..\s|
|00000b50| 65 74 62 6f 78 30 5c 68 | 62 6f 78 7b 5c 74 74 20 |etbox0\h|box{\tt |
|00000b60| 5c 63 68 61 72 22 35 42 | 7b 7d 20 5c 63 68 61 72 |\char"5B|{} \char|
|00000b70| 22 35 44 7b 7d 20 7d 0a | 5c 69 74 65 6d 5b 5c 63 |"5D{} }.|\item[\c|
|00000b80| 6f 70 79 30 5d 20 42 72 | 61 63 6b 65 74 73 20 61 |opy0] Br|ackets a|
|00000b90| 72 65 20 65 71 75 69 76 | 61 6c 65 6e 74 20 74 6f |re equiv|alent to|
|00000ba0| 20 70 61 72 65 6e 74 68 | 65 73 65 73 2e 20 54 68 | parenth|eses. Th|
|00000bb0| 65 79 20 61 72 65 20 75 | 73 65 64 0a 20 20 66 6f |ey are u|sed. fo|
|00000bc0| 72 20 67 72 6f 75 70 69 | 6e 67 20 61 6e 64 20 74 |r groupi|ng and t|
|00000bd0| 6f 20 6e 6f 74 61 74 65 | 20 6c 69 73 74 73 2e 20 |o notate| lists. |
|00000be0| 41 20 6c 69 73 74 20 6f | 70 65 6e 65 64 20 77 69 |A list o|pened wi|
|00000bf0| 74 68 20 61 20 6c 65 66 | 74 20 73 71 75 61 72 65 |th a lef|t square|
|00000c00| 0a 20 20 62 72 61 63 6b | 65 74 20 6d 75 73 74 20 |. brack|et must |
|00000c10| 62 65 20 63 6c 6f 73 65 | 64 20 77 69 74 68 20 61 |be close|d with a|
|00000c20| 20 72 69 67 68 74 20 73 | 71 75 61 72 65 20 62 72 | right s|quare br|
|00000c30| 61 63 6b 65 74 0a 20 20 | 28 73 65 63 74 69 6f 6e |acket. |(section|
|00000c40| 7e 5c 72 65 66 7b 6c 69 | 73 74 73 65 63 74 69 6f |~\ref{li|stsectio|
|00000c50| 6e 7d 29 2e 0a 0a 5c 69 | 74 65 6d 5b 5c 74 74 3a |n})...\i|tem[\tt:|
|00000c60| 5d 20 41 20 63 6f 6c 6f | 6e 20 61 74 20 74 68 65 |] A colo|n at the|
|00000c70| 20 62 65 67 69 6e 6e 69 | 6e 67 20 6f 66 20 61 20 | beginni|ng of a |
|00000c80| 73 79 6d 62 6f 6c 20 69 | 6e 74 72 6f 64 75 63 65 |symbol i|ntroduce|
|00000c90| 73 20 61 20 6b 65 79 77 | 6f 72 64 2e 0a 20 20 4b |s a keyw|ord.. K|
|00000ca0| 65 79 77 6f 72 64 73 20 | 61 72 65 20 64 65 73 63 |eywords |are desc|
|00000cb0| 72 69 62 65 64 20 69 6e | 20 73 65 63 74 69 6f 6e |ribed in| section|
|00000cc0| 7e 5c 72 65 66 7b 6b 65 | 79 77 6f 72 64 73 7d 2e |~\ref{ke|ywords}.|
|00000cd0| 0a 20 20 0a 5c 69 74 65 | 6d 5b 5c 74 74 5c 73 68 |. .\ite|m[\tt\sh|
|00000ce0| 61 72 70 73 69 67 6e 2e | 3c 65 78 70 72 3e 5d 20 |arpsign.|<expr>] |
|00000cf0| 69 73 20 72 65 61 64 20 | 61 73 20 74 68 65 20 65 |is read |as the e|
|00000d00| 76 61 6c 75 61 74 69 6f | 6e 20 6f 66 20 74 68 65 |valuatio|n of the|
|00000d10| 20 53 63 68 65 6d 65 0a | 20 20 65 78 70 72 65 73 | Scheme.| expres|
|00000d20| 73 69 6f 6e 20 7b 5c 74 | 74 20 3c 65 78 70 72 3e |sion {\t|t <expr>|
|00000d30| 7d 2e 20 54 68 65 20 65 | 76 61 6c 75 61 74 69 6f |}. The e|valuatio|
|00000d40| 6e 20 69 73 20 64 6f 6e | 65 20 64 75 72 69 6e 67 |n is don|e during|
|00000d50| 20 74 68 65 0a 20 20 5c | 69 64 65 7b 72 65 61 64 | the. \|ide{read|
|00000d60| 7d 20 70 72 6f 63 65 73 | 73 2c 20 77 68 65 6e 20 |} proces|s, when |
|00000d70| 74 68 65 20 5c 76 61 72 | 7b 5c 73 68 61 72 70 73 |the \var|{\sharps|
|00000d80| 69 67 6e 2e 7d 20 69 73 | 20 65 6e 63 6f 75 6e 74 |ign.} is| encount|
|00000d90| 65 72 65 64 2e 0a 20 20 | 45 76 61 6c 75 73 74 61 |ered.. |Evalusta|
|00000da0| 69 6f 6e 20 69 73 20 64 | 6f 6e 65 20 69 6e 20 74 |ion is d|one in t|
|00000db0| 68 65 20 67 6c 6f 62 61 | 6c 2d 65 6e 76 69 72 6f |he globa|l-enviro|
|00000dc0| 6e 6d 65 6e 74 2e 0a 20 | 20 5c 62 65 67 69 6e 7b |nment.. | \begin{|
|00000dd0| 73 63 68 65 6d 65 7d 0a | 20 20 20 20 28 64 65 66 |scheme}.| (def|
|00000de0| 69 6e 65 20 66 6f 6f 20 | 31 29 0a 20 20 20 20 5c |ine foo |1). \|
|00000df0| 73 68 61 72 70 73 69 67 | 6e 2e 66 6f 6f 20 20 20 |sharpsig|n.foo |
|00000e00| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000e10| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 5c 6c | | \l|
|00000e20| 65 76 20 31 0a 20 20 20 | 20 27 28 66 6f 6f 20 5c |ev 1. | '(foo \|
|00000e30| 73 68 61 72 70 73 69 67 | 6e 2e 66 6f 6f 20 5c 73 |sharpsig|n.foo \s|
|00000e40| 68 61 72 70 73 69 67 6e | 2e 28 2b 20 66 6f 6f 20 |harpsign|.(+ foo |
|00000e50| 66 6f 6f 29 29 20 20 20 | 5c 6c 65 76 20 28 66 6f |foo)) |\lev (fo|
|00000e60| 6f 20 31 20 32 29 0a 20 | 20 20 20 28 6c 65 74 20 |o 1 2). | (let |
|00000e70| 28 28 66 6f 6f 20 32 29 | 29 0a 20 20 20 20 20 20 |((foo 2)|). |
|00000e80| 20 5c 73 68 61 72 70 73 | 69 67 6e 2e 66 6f 6f 29 | \sharps|ign.foo)|
|00000e90| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000ea0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 5c 6c 65 | | \le|
|00000eb0| 76 20 31 0a 20 20 20 20 | 0a 20 20 5c 65 6e 64 7b |v 1. |. \end{|
|00000ec0| 73 63 68 65 6d 65 7d 0a | 5c 65 6e 64 7b 64 65 73 |scheme}.|\end{des|
|00000ed0| 63 72 69 70 74 69 6f 6e | 7d 0a 0a 0a 25 25 25 25 |cription|}...%%%%|
|00000ee0| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00000ef0| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00000f00| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00000f10| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00000f20| 25 25 25 25 25 25 25 25 | 25 25 0a 5c 73 65 63 74 |%%%%%%%%|%%.\sect|
|00000f30| 69 6f 6e 7b 42 61 73 69 | 63 20 63 6f 6e 63 65 70 |ion{Basi|c concep|
|00000f40| 74 73 7d 0a 0a 7b 5c 64 | 6f 63 7d 0a 0a 25 25 25 |ts}..{\d|oc}..%%%|
|00000f50| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00000f60| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00000f70| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00000f80| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00000f90| 25 25 25 25 25 25 25 25 | 25 25 25 0a 5c 73 65 63 |%%%%%%%%|%%%.\sec|
|00000fa0| 74 69 6f 6e 7b 45 78 70 | 72 65 73 73 69 6f 6e 73 |tion{Exp|ressions|
|00000fb0| 7d 0a 0a 5c 73 75 62 73 | 65 63 74 69 6f 6e 7b 50 |}..\subs|ection{P|
|00000fc0| 72 69 6d 69 74 69 76 65 | 20 65 78 70 72 65 73 73 |rimitive| express|
|00000fd0| 69 6f 6e 20 74 79 70 65 | 73 7d 0a 0a 5c 62 65 67 |ion type|s}..\beg|
|00000fe0| 69 6e 7b 65 6e 74 72 79 | 7d 7b 25 0a 5c 70 72 6f |in{entry|}{%.\pro|
|00000ff0| 74 6f 7b 71 75 6f 74 65 | 7d 7b 20 5c 68 79 70 65 |to{quote|}{ \hype|
|00001000| 72 7b 64 61 74 75 6d 7d | 7d 7b 5c 65 78 70 72 74 |r{datum}|}{\exprt|
|00001010| 79 70 65 7d 0a 5c 70 70 | 72 6f 74 6f 7b 5c 73 69 |ype}.\pp|roto{\si|
|00001020| 6e 67 6c 65 71 75 6f 74 | 65 5c 68 79 70 65 72 7b |nglequot|e\hyper{|
|00001030| 64 61 74 75 6d 7d 7d 7b | 5c 65 78 70 72 74 79 70 |datum}}{|\exprtyp|
|00001040| 65 7d 7d 0a 5c 73 61 75 | 74 0a 54 68 65 20 71 75 |e}}.\sau|t.The qu|
|00001050| 6f 74 69 6e 67 20 6d 65 | 63 68 61 6e 69 73 6d 20 |oting me|chanism |
|00001060| 69 73 20 69 64 65 6e 74 | 69 63 61 6c 20 74 6f 20 |is ident|ical to |
|00001070| 7b 5c 72 72 72 72 7d 2e | 20 4b 65 79 77 6f 72 64 |{\rrrr}.| Keyword|
|00001080| 73 20 28 73 65 65 0a 73 | 65 63 74 69 6f 6e 7e 5c |s (see.s|ection~\|
|00001090| 72 65 66 7b 6b 65 79 77 | 6f 72 64 73 7d 29 2c 20 |ref{keyw|ords}), |
|000010a0| 61 73 0a 6e 75 6d 65 72 | 69 63 61 6c 20 63 6f 6e |as.numer|ical con|
|000010b0| 73 74 61 6e 74 73 2c 20 | 73 74 72 69 6e 67 20 63 |stants, |string c|
|000010c0| 6f 6e 73 74 61 6e 74 73 | 2c 20 63 68 61 72 61 63 |onstants|, charac|
|000010d0| 74 65 72 20 63 6f 6e 73 | 74 61 6e 74 73 2c 20 61 |ter cons|tants, a|
|000010e0| 6e 64 20 62 6f 6f 6c 65 | 61 6e 0a 63 6f 6e 73 74 |nd boole|an.const|
|000010f0| 61 6e 74 73 20 65 76 61 | 6c 75 61 74 65 20 60 60 |ants eva|luate ``|
|00001100| 74 6f 20 74 68 65 6d 73 | 65 6c 76 65 73 27 27 3b |to thems|elves'';|
|00001110| 20 74 68 65 79 20 6e 65 | 65 64 20 6e 6f 74 20 62 | they ne|ed not b|
|00001120| 65 20 71 75 6f 74 65 64 | 2e 0a 5c 62 65 67 69 6e |e quoted|..\begin|
|00001130| 7b 73 63 68 65 6d 65 7d | 0a 27 22 61 62 63 22 20 |{scheme}|.'"abc" |
|00001140| 20 20 20 20 5c 65 76 20 | 20 22 61 62 63 22 0a 22 | \ev | "abc"."|
|00001150| 61 62 63 22 20 20 20 20 | 20 20 5c 65 76 20 20 22 |abc" | \ev "|
|00001160| 61 62 63 22 0a 27 31 34 | 35 39 33 32 20 20 20 20 |abc".'14|5932 |
|00001170| 5c 65 76 20 20 31 34 35 | 39 33 32 0a 31 34 35 39 |\ev 145|932.1459|
|00001180| 33 32 20 20 20 20 20 5c | 65 76 20 20 31 34 35 39 |32 \|ev 1459|
|00001190| 33 32 0a 27 5c 73 63 68 | 74 72 75 65 20 20 5c 65 |32.'\sch|true \e|
|000011a0| 76 20 20 5c 73 63 68 74 | 72 75 65 0a 5c 73 63 68 |v \scht|rue.\sch|
|000011b0| 74 72 75 65 20 20 20 5c | 65 76 20 20 5c 73 63 68 |true \|ev \sch|
|000011c0| 74 72 75 65 0a 27 3a 6b | 65 79 20 20 20 20 20 20 |true.':k|ey |
|000011d0| 5c 65 76 20 20 7b 3a 6b | 65 79 7d 0a 3a 6b 65 79 |\ev {:k|ey}.:key|
|000011e0| 20 20 20 20 20 20 20 5c | 65 76 20 20 7b 3a 6b 65 | \|ev {:ke|
|000011f0| 79 7d 0a 5c 65 6e 64 7b | 73 63 68 65 6d 65 7d 0a |y}.\end{|scheme}.|
|00001200| 5c 62 65 67 69 6e 7b 6e | 6f 74 65 7d 0a 20 20 7b |\begin{n|ote}. {|
|00001210| 5c 72 72 72 72 7d 20 72 | 65 71 75 69 72 65 73 20 |\rrrr} r|equires |
|00001220| 74 6f 20 71 75 6f 74 65 | 20 63 6f 6e 73 74 61 6e |to quote| constan|
|00001230| 74 20 6c 69 73 74 73 20 | 61 6e 64 20 63 6f 6e 73 |t lists |and cons|
|00001240| 74 61 6e 74 20 76 65 63 | 74 6f 72 73 2e 20 54 68 |tant vec|tors. Th|
|00001250| 69 73 0a 20 20 69 73 20 | 6e 6f 74 20 6e 65 63 65 |is. is |not nece|
|00001260| 73 73 61 72 79 20 77 69 | 74 68 20 7b 5c 73 74 6b |ssary wi|th {\stk|
|00001270| 7d 2e 0a 5c 65 6e 64 7b | 6e 6f 74 65 7d 0a 5c 65 |}..\end{|note}.\e|
|00001280| 6e 64 7b 65 6e 74 72 79 | 7d 0a 0a 5c 62 65 67 69 |nd{entry|}..\begi|
|00001290| 6e 7b 65 6e 74 72 79 7d | 7b 25 0a 5c 70 70 72 6f |n{entry}|{%.\ppro|
|000012a0| 74 6f 7b 28 5c 68 79 70 | 65 72 7b 6f 70 65 72 61 |to{(\hyp|er{opera|
|000012b0| 74 6f 72 7d 20 5c 68 79 | 70 65 72 69 7b 6f 70 65 |tor} \hy|peri{ope|
|000012c0| 72 61 6e 64 7d 20 5c 64 | 6f 74 73 66 6f 6f 29 7d |rand} \d|otsfoo)}|
|000012d0| 7b 5c 65 78 70 72 74 79 | 70 65 7d 7d 0a 5c 73 61 |{\exprty|pe}}.\sa|
|000012e0| 75 74 0a 7b 5c 64 6f 63 | 7d 20 46 75 72 74 68 65 |ut.{\doc|} Furthe|
|000012f0| 72 6d 6f 72 65 2c 20 5c | 68 79 70 65 72 7b 6f 70 |rmore, \|hyper{op|
|00001300| 65 72 61 74 6f 72 7d 20 | 63 61 6e 20 62 65 20 61 |erator} |can be a|
|00001310| 20 6d 61 63 72 6f 20 28 | 73 65 65 20 73 65 63 74 | macro (|see sect|
|00001320| 69 6f 6e 7e 5c 72 65 66 | 7b 6d 61 63 72 6f 73 7d |ion~\ref|{macros}|
|00001330| 29 2e 0a 5c 65 6e 64 7b | 65 6e 74 72 79 7d 0a 0a |)..\end{|entry}..|
|00001340| 5c 62 65 67 69 6e 7b 65 | 6e 74 72 79 7d 7b 25 0a |\begin{e|ntry}{%.|
|00001350| 5c 70 72 6f 74 6f 7b 6c | 61 6d 62 64 61 7d 7b 20 |\proto{l|ambda}{ |
|00001360| 5c 68 79 70 65 72 7b 66 | 6f 72 6d 61 6c 73 7d 20 |\hyper{f|ormals} |
|00001370| 5c 68 79 70 65 72 7b 62 | 6f 64 79 7d 7d 7b 5c 65 |\hyper{b|ody}}{\e|
|00001380| 78 70 72 74 79 70 65 7d | 0a 5c 70 72 6f 74 6f 7b |xprtype}|.\proto{|
|00001390| 69 66 7d 7b 20 5c 68 79 | 70 65 72 7b 74 65 73 74 |if}{ \hy|per{test|
|000013a0| 7d 20 5c 68 79 70 65 72 | 7b 63 6f 6e 73 65 71 75 |} \hyper|{consequ|
|000013b0| 65 6e 74 7d 20 5c 68 79 | 70 65 72 7b 61 6c 74 65 |ent} \hy|per{alte|
|000013c0| 72 6e 61 74 65 7d 7d 20 | 7b 5c 65 78 70 72 74 79 |rnate}} |{\exprty|
|000013d0| 70 65 7d 0a 5c 70 72 6f | 74 6f 7b 69 66 7d 7b 20 |pe}.\pro|to{if}{ |
|000013e0| 5c 68 79 70 65 72 7b 74 | 65 73 74 7d 20 5c 68 79 |\hyper{t|est} \hy|
|000013f0| 70 65 72 7b 63 6f 6e 73 | 65 71 75 65 6e 74 7d 7d |per{cons|equent}}|
|00001400| 7b 5c 65 78 70 72 74 79 | 70 65 7d 0a 5c 70 72 6f |{\exprty|pe}.\pro|
|00001410| 74 6f 7b 73 65 74 21 7d | 7b 20 5c 68 79 70 65 72 |to{set!}|{ \hyper|
|00001420| 7b 76 61 72 69 61 62 6c | 65 7d 20 5c 68 79 70 65 |{variabl|e} \hype|
|00001430| 72 7b 65 78 70 72 65 73 | 73 69 6f 6e 7d 7d 7b 5c |r{expres|sion}}{\|
|00001440| 65 78 70 72 74 79 70 65 | 7d 7d 0a 5c 73 61 75 74 |exprtype|}}.\saut|
|00001450| 0a 5c 64 6f 63 0a 5c 65 | 6e 64 7b 65 6e 74 72 79 |.\doc.\e|nd{entry|
|00001460| 7d 0a 0a 5c 73 75 62 73 | 65 63 74 69 6f 6e 7b 44 |}..\subs|ection{D|
|00001470| 65 72 69 76 65 64 20 65 | 78 70 72 65 73 73 69 6f |erived e|xpressio|
|00001480| 6e 20 74 79 70 65 73 7d | 0a 0a 5c 62 65 67 69 6e |n types}|..\begin|
|00001490| 7b 65 6e 74 72 79 7d 7b | 25 0a 5c 70 72 6f 74 6f |{entry}{|%.\proto|
|000014a0| 7b 63 6f 6e 64 7d 7b 20 | 5c 68 79 70 65 72 69 7b |{cond}{ |\hyperi{|
|000014b0| 63 6c 61 75 73 65 7d 20 | 5c 68 79 70 65 72 69 69 |clause} |\hyperii|
|000014c0| 7b 63 6c 61 75 73 65 7d | 20 5c 64 6f 74 73 66 6f |{clause}| \dotsfo|
|000014d0| 6f 7d 7b 5c 65 78 70 72 | 74 79 70 65 7d 0a 5c 70 |o}{\expr|type}.\p|
|000014e0| 72 6f 74 6f 7b 63 61 73 | 65 7d 7b 20 5c 68 79 70 |roto{cas|e}{ \hyp|
|000014f0| 65 72 7b 6b 65 79 7d 20 | 5c 68 79 70 65 72 69 7b |er{key} |\hyperi{|
|00001500| 63 6c 61 75 73 65 7d 20 | 5c 68 79 70 65 72 69 69 |clause} |\hyperii|
|00001510| 7b 63 6c 61 75 73 65 7d | 20 5c 64 6f 74 73 66 6f |{clause}| \dotsfo|
|00001520| 6f 7d 7b 5c 65 78 70 72 | 74 79 70 65 7d 0a 5c 70 |o}{\expr|type}.\p|
|00001530| 72 6f 74 6f 7b 61 6e 64 | 7d 7b 20 5c 68 79 70 65 |roto{and|}{ \hype|
|00001540| 72 69 7b 74 65 73 74 7d | 20 5c 64 6f 74 73 66 6f |ri{test}| \dotsfo|
|00001550| 6f 7d 7b 5c 65 78 70 72 | 74 79 70 65 7d 0a 5c 70 |o}{\expr|type}.\p|
|00001560| 72 6f 74 6f 7b 6f 72 7d | 7b 20 5c 68 79 70 65 72 |roto{or}|{ \hyper|
|00001570| 69 7b 74 65 73 74 7d 20 | 5c 64 6f 74 73 66 6f 6f |i{test} |\dotsfoo|
|00001580| 7d 7b 5c 65 78 70 72 74 | 79 70 65 7d 7d 0a 5c 73 |}{\exprt|ype}}.\s|
|00001590| 61 75 74 0a 5c 64 6f 63 | 0a 5c 65 6e 64 7b 65 6e |aut.\doc|.\end{en|
|000015a0| 74 72 79 7d 0a 0a 5c 62 | 65 67 69 6e 7b 65 6e 74 |try}..\b|egin{ent|
|000015b0| 72 79 7d 7b 25 0a 5c 70 | 72 6f 74 6f 7b 77 68 65 |ry}{%.\p|roto{whe|
|000015c0| 6e 7d 7b 20 5c 68 79 70 | 65 72 7b 74 65 73 74 7d |n}{ \hyp|er{test}|
|000015d0| 20 5c 68 79 70 65 72 69 | 7b 65 78 70 72 65 73 73 | \hyperi|{express|
|000015e0| 69 6f 6e 7d 20 5c 68 79 | 70 65 72 69 69 7b 65 78 |ion} \hy|perii{ex|
|000015f0| 70 72 65 73 73 69 6f 6e | 7d 20 5c 64 6f 74 73 66 |pression|} \dotsf|
|00001600| 6f 6f 7d 7b 5c 65 78 70 | 72 74 79 70 65 7d 7d 0a |oo}{\exp|rtype}}.|
|00001610| 5c 73 61 75 74 0a 49 66 | 20 74 68 65 20 5c 68 79 |\saut.If| the \hy|
|00001620| 70 65 72 7b 74 65 73 74 | 7d 20 65 78 70 72 65 73 |per{test|} expres|
|00001630| 73 69 6f 6e 20 79 69 65 | 6c 64 73 20 61 20 74 72 |sion yie|lds a tr|
|00001640| 75 65 20 76 61 6c 75 65 | 2c 20 74 68 65 20 5c 68 |ue value|, the \h|
|00001650| 79 70 65 72 7b 65 78 70 | 72 65 73 73 69 6f 6e 7d |yper{exp|ression}|
|00001660| 73 20 61 72 65 0a 65 76 | 61 6c 75 61 74 65 64 20 |s are.ev|aluated |
|00001670| 66 72 6f 6d 20 6c 65 66 | 74 20 74 6f 20 72 69 67 |from lef|t to rig|
|00001680| 68 74 20 61 6e 64 20 74 | 68 65 20 76 61 6c 75 65 |ht and t|he value|
|00001690| 20 6f 66 20 74 68 65 20 | 6c 61 73 74 20 5c 68 79 | of the |last \hy|
|000016a0| 70 65 72 7b 65 78 70 72 | 65 73 73 69 6f 6e 7d 20 |per{expr|ession} |
|000016b0| 69 73 0a 72 65 74 75 72 | 6e 65 64 2e 0a 5c 65 6e |is.retur|ned..\en|
|000016c0| 64 7b 65 6e 74 72 79 7d | 0a 0a 5c 62 65 67 69 6e |d{entry}|..\begin|
|000016d0| 7b 65 6e 74 72 79 7d 7b | 25 0a 5c 70 72 6f 74 6f |{entry}{|%.\proto|
|000016e0| 7b 75 6e 6c 65 73 73 7d | 7b 20 5c 68 79 70 65 72 |{unless}|{ \hyper|
|000016f0| 7b 74 65 73 74 7d 20 5c | 68 79 70 65 72 69 7b 65 |{test} \|hyperi{e|
|00001700| 78 70 72 65 73 73 69 6f | 6e 7d 20 5c 68 79 70 65 |xpressio|n} \hype|
|00001710| 72 69 69 7b 65 78 70 72 | 65 73 73 69 6f 6e 7d 20 |rii{expr|ession} |
|00001720| 5c 64 6f 74 73 66 6f 6f | 7d 0a 20 20 20 20 20 20 |\dotsfoo|}. |
|00001730| 20 20 20 20 20 20 7b 5c | 65 78 70 72 74 79 70 65 | {\|exprtype|
|00001740| 7d 7d 0a 5c 73 61 75 74 | 0a 49 66 20 74 68 65 20 |}}.\saut|.If the |
|00001750| 5c 68 79 70 65 72 7b 74 | 65 73 74 7d 20 65 78 70 |\hyper{t|est} exp|
|00001760| 72 65 73 73 69 6f 6e 20 | 79 69 65 6c 64 73 20 61 |ression |yields a|
|00001770| 20 66 61 6c 73 65 20 76 | 61 6c 75 65 2c 20 74 68 | false v|alue, th|
|00001780| 65 20 5c 68 79 70 65 72 | 7b 65 78 70 72 65 73 73 |e \hyper|{express|
|00001790| 69 6f 6e 7d 73 20 61 72 | 65 0a 65 76 61 6c 75 61 |ion}s ar|e.evalua|
|000017a0| 74 65 64 20 66 72 6f 6d | 20 6c 65 66 74 20 74 6f |ted from| left to|
|000017b0| 20 72 69 67 68 74 20 61 | 6e 64 20 74 68 65 20 76 | right a|nd the v|
|000017c0| 61 6c 75 65 20 6f 66 20 | 74 68 65 20 6c 61 73 74 |alue of |the last|
|000017d0| 20 5c 68 79 70 65 72 7b | 65 78 70 72 65 73 73 69 | \hyper{|expressi|
|000017e0| 6f 6e 7d 20 69 73 0a 72 | 65 74 75 72 6e 65 64 2e |on} is.r|eturned.|
|000017f0| 0a 5c 65 6e 64 7b 65 6e | 74 72 79 7d 0a 0a 5c 62 |.\end{en|try}..\b|
|00001800| 65 67 69 6e 7b 65 6e 74 | 72 79 7d 7b 25 0a 5c 70 |egin{ent|ry}{%.\p|
|00001810| 72 6f 74 6f 7b 6c 65 74 | 7d 7b 20 5c 68 79 70 65 |roto{let|}{ \hype|
|00001820| 72 7b 62 69 6e 64 69 6e | 67 73 7d 20 5c 68 79 70 |r{bindin|gs} \hyp|
|00001830| 65 72 7b 62 6f 64 79 7d | 7d 7b 5c 65 78 70 72 74 |er{body}|}{\exprt|
|00001840| 79 70 65 7d 0a 5c 70 72 | 6f 74 6f 7b 6c 65 74 7d |ype}.\pr|oto{let}|
|00001850| 7b 20 5c 68 79 70 65 72 | 7b 76 61 72 69 61 62 6c |{ \hyper|{variabl|
|00001860| 65 7d 20 5c 68 79 70 65 | 72 7b 62 69 6e 64 69 6e |e} \hype|r{bindin|
|00001870| 67 73 7d 20 5c 68 79 70 | 65 72 7b 62 6f 64 79 7d |gs} \hyp|er{body}|
|00001880| 7d 7b 5c 65 78 70 72 74 | 79 70 65 7d 0a 5c 70 72 |}{\exprt|ype}.\pr|
|00001890| 6f 74 6f 7b 6c 65 74 2a | 7d 7b 20 5c 68 79 70 65 |oto{let*|}{ \hype|
|000018a0| 72 7b 62 69 6e 64 69 6e | 67 73 7d 20 5c 68 79 70 |r{bindin|gs} \hyp|
|000018b0| 65 72 7b 62 6f 64 79 7d | 7d 7b 5c 65 78 70 72 74 |er{body}|}{\exprt|
|000018c0| 79 70 65 7d 7d 0a 5c 73 | 61 75 74 0a 5c 64 6f 63 |ype}}.\s|aut.\doc|
|000018d0| 0a 5c 65 6e 64 7b 65 6e | 74 72 79 7d 0a 0a 5c 62 |.\end{en|try}..\b|
|000018e0| 65 67 69 6e 7b 65 6e 74 | 72 79 7d 7b 25 0a 5c 70 |egin{ent|ry}{%.\p|
|000018f0| 72 6f 74 6f 7b 66 6c 75 | 69 64 2d 6c 65 74 7d 7b |roto{flu|id-let}{|
|00001900| 20 5c 68 79 70 65 72 7b | 62 69 6e 64 69 6e 67 73 | \hyper{|bindings|
|00001910| 7d 20 5c 68 79 70 65 72 | 7b 62 6f 64 79 7d 7d 7b |} \hyper|{body}}{|
|00001920| 5c 65 78 70 72 74 79 70 | 65 7d 7d 0a 5c 73 61 75 |\exprtyp|e}}.\sau|
|00001930| 74 0a 54 68 65 20 5c 76 | 61 72 7b 62 69 6e 64 69 |t.The \v|ar{bindi|
|00001940| 6e 67 73 7d 20 61 72 65 | 20 65 76 61 6c 75 61 74 |ngs} are| evaluat|
|00001950| 65 64 20 69 6e 20 74 68 | 65 20 63 75 72 72 65 6e |ed in th|e curren|
|00001960| 74 20 65 6e 76 69 72 6f | 6e 6d 65 6e 74 2c 20 69 |t enviro|nment, i|
|00001970| 6e 20 73 6f 6d 65 0a 75 | 6e 73 70 65 63 69 66 69 |n some.u|nspecifi|
|00001980| 65 64 20 6f 72 64 65 72 | 2c 20 74 68 65 20 63 75 |ed order|, the cu|
|00001990| 72 72 65 6e 74 20 76 61 | 6c 75 65 73 20 6f 66 20 |rrent va|lues of |
|000019a0| 74 68 65 20 76 61 72 69 | 61 62 6c 65 73 20 70 72 |the vari|ables pr|
|000019b0| 65 73 65 6e 74 20 69 6e | 0a 5c 76 61 72 7b 62 69 |esent in|.\var{bi|
|000019c0| 6e 64 69 6e 67 73 7d 20 | 61 72 65 20 73 61 76 65 |ndings} |are save|
|000019d0| 64 2c 20 61 6e 64 20 74 | 68 65 20 6e 65 77 20 65 |d, and t|he new e|
|000019e0| 76 61 6c 75 61 74 65 64 | 20 76 61 6c 75 65 73 20 |valuated| values |
|000019f0| 61 72 65 20 61 73 73 69 | 67 6e 65 64 20 74 6f 20 |are assi|gned to |
|00001a00| 74 68 65 20 0a 5c 76 61 | 72 7b 62 69 6e 64 69 6e |the .\va|r{bindin|
|00001a10| 67 73 7d 20 76 61 72 69 | 61 62 6c 65 73 2e 20 4f |gs} vari|ables. O|
|00001a20| 6e 63 65 20 74 68 69 73 | 20 69 73 20 64 6f 6e 65 |nce this| is done|
|00001a30| 2c 20 74 68 65 20 65 78 | 70 72 65 73 73 69 6f 6e |, the ex|pression|
|00001a40| 73 20 6f 66 20 5c 76 61 | 72 7b 62 6f 64 79 7d 0a |s of \va|r{body}.|
|00001a50| 61 72 65 20 65 76 61 6c | 75 61 74 65 64 20 73 65 |are eval|uated se|
|00001a60| 71 75 65 6e 74 69 61 6c | 6c 79 20 69 6e 20 74 68 |quential|ly in th|
|00001a70| 65 20 63 75 72 72 65 6e | 74 20 65 6e 76 69 72 6f |e curren|t enviro|
|00001a80| 6e 6d 65 6e 74 3b 20 74 | 68 65 20 76 61 6c 75 65 |nment; t|he value|
|00001a90| 20 6f 66 20 74 68 65 0a | 6c 61 73 74 20 65 78 70 | of the.|last exp|
|00001aa0| 72 65 73 73 69 6f 6e 20 | 69 73 20 74 68 65 20 72 |ression |is the r|
|00001ab0| 65 73 75 6c 74 20 6f 66 | 20 7b 5c 74 74 20 66 6c |esult of| {\tt fl|
|00001ac0| 75 69 64 2d 6c 65 74 7d | 2e 20 55 70 6f 6e 20 65 |uid-let}|. Upon e|
|00001ad0| 78 69 74 2c 20 74 68 65 | 20 73 74 6f 72 65 64 0a |xit, the| stored.|
|00001ae0| 76 61 72 69 61 62 6c 65 | 73 20 76 61 6c 75 65 73 |variable|s values|
|00001af0| 20 61 72 65 20 72 65 73 | 74 6f 72 65 64 2e 20 41 | are res|tored. A|
|00001b00| 6e 20 65 72 72 6f 72 20 | 69 73 20 73 69 67 6e 61 |n error |is signa|
|00001b10| 6c 6c 65 64 20 69 66 20 | 61 6e 79 20 6f 66 20 74 |lled if |any of t|
|00001b20| 68 65 20 0a 5c 76 61 72 | 7b 62 69 6e 64 69 6e 67 |he .\var|{binding|
|00001b30| 73 7d 20 76 61 72 69 61 | 62 6c 65 20 69 73 20 75 |s} varia|ble is u|
|00001b40| 6e 62 6f 75 6e 64 2e 0a | 5c 62 65 67 69 6e 7b 73 |nbound..|\begin{s|
|00001b50| 63 68 65 6d 65 7d 0a 28 | 6c 65 74 2a 20 28 28 61 |cheme}.(|let* ((a|
|00001b60| 20 27 6f 75 74 29 0a 20 | 20 20 20 20 20 20 28 66 | 'out). | (f|
|00001b70| 20 28 6c 61 6d 62 64 61 | 20 28 29 20 61 29 29 29 | (lambda| () a)))|
|00001b80| 0a 20 20 28 6c 69 73 74 | 20 61 20 0a 20 20 20 20 |. (list| a . |
|00001b90| 20 20 20 20 28 66 6c 75 | 69 64 2d 6c 65 74 20 28 | (flu|id-let (|
|00001ba0| 28 61 20 27 69 6e 29 29 | 20 28 66 29 29 0a 20 20 |(a 'in))| (f)). |
|00001bb0| 20 20 20 20 20 20 61 29 | 29 20 5c 6c 65 76 20 28 | a)|) \lev (|
|00001bc0| 6f 75 74 20 69 6e 20 6f | 75 74 29 0a 5c 65 6e 64 |out in o|ut).\end|
|00001bd0| 7b 73 63 68 65 6d 65 7d | 0a 57 68 65 6e 20 74 68 |{scheme}|.When th|
|00001be0| 65 20 62 6f 64 79 20 6f | 66 20 61 20 5c 69 64 65 |e body o|f a \ide|
|00001bf0| 7b 66 6c 75 69 64 2d 6c | 65 74 7d 20 69 73 20 65 |{fluid-l|et} is e|
|00001c00| 78 69 74 65 64 20 62 79 | 20 69 6e 76 6f 6b 69 6e |xited by| invokin|
|00001c10| 67 20 61 20 63 6f 6e 74 | 69 6e 75 61 74 69 6f 6e |g a cont|inuation|
|00001c20| 2c 0a 74 68 65 20 6e 65 | 77 20 76 61 72 69 61 62 |,.the ne|w variab|
|00001c30| 6c 65 20 76 61 6c 75 65 | 73 20 61 72 65 20 73 61 |le value|s are sa|
|00001c40| 76 65 64 2c 20 61 6e 64 | 20 74 68 65 20 76 61 72 |ved, and| the var|
|00001c50| 69 61 62 6c 65 73 20 61 | 72 65 20 73 65 74 20 74 |iables a|re set t|
|00001c60| 6f 20 74 68 65 69 72 20 | 6f 6c 64 20 0a 76 61 6c |o their |old .val|
|00001c70| 75 65 73 2e 20 54 68 65 | 6e 2c 20 69 66 20 74 68 |ues. The|n, if th|
|00001c80| 65 20 62 6f 64 79 20 69 | 73 20 72 65 65 6e 74 65 |e body i|s reente|
|00001c90| 72 65 64 20 62 79 20 69 | 6e 76 6f 6b 69 6e 67 20 |red by i|nvoking |
|00001ca0| 61 20 63 6f 6e 74 69 6e | 75 61 74 69 6f 6e 2c 20 |a contin|uation, |
|00001cb0| 74 68 65 20 6f 6c 64 0a | 76 61 6c 75 65 73 20 61 |the old.|values a|
|00001cc0| 72 65 20 73 61 76 65 64 | 20 61 6e 64 20 6e 65 77 |re saved| and new|
|00001cd0| 20 76 61 6c 75 65 73 20 | 61 72 65 20 72 65 73 74 | values |are rest|
|00001ce0| 6f 72 65 64 2e 20 54 68 | 65 20 66 6f 6c 6c 6f 77 |ored. Th|e follow|
|00001cf0| 69 6e 67 20 65 78 61 6d | 70 6c 65 20 69 6c 6c 75 |ing exam|ple illu|
|00001d00| 73 74 72 61 74 65 73 0a | 74 68 69 73 20 62 65 68 |strates.|this beh|
|00001d10| 61 76 69 6f 75 72 0a 5c | 62 65 67 69 6e 7b 73 63 |aviour.\|begin{sc|
|00001d20| 68 65 6d 65 7d 0a 28 6c | 65 74 20 28 28 63 6f 6e |heme}.(l|et ((con|
|00001d30| 74 20 5c 73 63 68 66 61 | 6c 73 65 29 0a 20 20 20 |t \schfa|lse). |
|00001d40| 20 20 20 28 6c 20 20 20 | 20 27 28 29 29 0a 20 20 | (l | '()). |
|00001d50| 20 20 20 20 28 61 20 20 | 20 20 27 6f 75 74 29 29 | (a | 'out))|
|00001d60| 0a 0a 20 20 28 73 65 74 | 21 20 6c 20 28 63 6f 6e |.. (set|! l (con|
|00001d70| 73 20 61 20 6c 29 29 0a | 20 20 28 66 6c 75 69 64 |s a l)).| (fluid|
|00001d80| 2d 6c 65 74 20 28 28 61 | 20 27 69 6e 29 29 0a 20 |-let ((a| 'in)). |
|00001d90| 20 20 20 28 73 65 74 21 | 20 63 6f 6e 74 20 28 63 | (set!| cont (c|
|00001da0| 61 6c 6c 2f 63 63 20 28 | 6c 61 6d 62 64 61 20 28 |all/cc (|lambda (|
|00001db0| 6b 29 20 6b 29 29 29 0a | 20 20 20 20 28 73 65 74 |k) k))).| (set|
|00001dc0| 21 20 6c 20 28 63 6f 6e | 73 20 61 20 6c 29 29 29 |! l (con|s a l)))|
|00001dd0| 0a 20 20 28 73 65 74 21 | 20 6c 20 28 63 6f 6e 73 |. (set!| l (cons|
|00001de0| 20 61 20 6c 29 29 0a 0a | 20 20 28 69 66 20 63 6f | a l))..| (if co|
|00001df0| 6e 74 20 28 63 6f 6e 74 | 20 5c 73 63 68 66 61 6c |nt (cont| \schfal|
|00001e00| 73 65 29 20 6c 29 29 20 | 5c 6c 65 76 20 28 6f 75 |se) l)) |\lev (ou|
|00001e10| 74 20 69 6e 20 6f 75 74 | 20 69 6e 20 6f 75 74 29 |t in out| in out)|
|00001e20| 0a 0a 5c 65 6e 64 7b 73 | 63 68 65 6d 65 7d 0a 5c |..\end{s|cheme}.\|
|00001e30| 65 6e 64 7b 65 6e 74 72 | 79 7d 0a 0a 5c 62 65 67 |end{entr|y}..\beg|
|00001e40| 69 6e 7b 65 6e 74 72 79 | 7d 7b 25 0a 5c 70 72 6f |in{entry|}{%.\pro|
|00001e50| 74 6f 7b 6c 65 74 72 65 | 63 7d 7b 20 5c 68 79 70 |to{letre|c}{ \hyp|
|00001e60| 65 72 7b 62 69 6e 64 69 | 6e 67 73 7d 20 5c 68 79 |er{bindi|ngs} \hy|
|00001e70| 70 65 72 7b 62 6f 64 79 | 7d 7d 7b 5c 65 78 70 72 |per{body|}}{\expr|
|00001e80| 74 79 70 65 7d 0a 5c 70 | 72 6f 74 6f 7b 62 65 67 |type}.\p|roto{beg|
|00001e90| 69 6e 7d 7b 20 5c 68 79 | 70 65 72 69 7b 65 78 70 |in}{ \hy|peri{exp|
|00001ea0| 72 65 73 73 69 6f 6e 7d | 20 5c 68 79 70 65 72 69 |ression}| \hyperi|
|00001eb0| 69 7b 65 78 70 72 65 73 | 73 69 6f 6e 7d 20 5c 64 |i{expres|sion} \d|
|00001ec0| 6f 74 73 66 6f 6f 7d 7b | 5c 65 78 70 72 74 79 70 |otsfoo}{|\exprtyp|
|00001ed0| 65 7d 0a 5c 70 72 6f 74 | 6f 7b 64 6f 7d 20 7b 20 |e}.\prot|o{do} { |
|00001ee0| 5c 68 79 70 65 72 7b 69 | 6e 69 74 73 7d 20 5c 68 |\hyper{i|nits} \h|
|00001ef0| 79 70 65 72 7b 74 65 73 | 74 7d 20 5c 68 79 70 65 |yper{tes|t} \hype|
|00001f00| 72 7b 62 6f 64 79 7d 7d | 7b 5c 65 78 70 72 74 79 |r{body}}|{\exprty|
|00001f10| 70 65 7d 0a 5c 70 72 6f | 74 6f 7b 64 65 6c 61 79 |pe}.\pro|to{delay|
|00001f20| 7d 7b 20 5c 68 79 70 65 | 72 7b 65 78 70 72 65 73 |}{ \hype|r{expres|
|00001f30| 73 69 6f 6e 7d 7d 7b 5c | 65 78 70 72 74 79 70 65 |sion}}{\|exprtype|
|00001f40| 7d 0a 5c 70 72 6f 74 6f | 7b 71 75 61 73 69 71 75 |}.\proto|{quasiqu|
|00001f50| 6f 74 65 7d 7b 20 5c 68 | 79 70 65 72 7b 74 65 6d |ote}{ \h|yper{tem|
|00001f60| 70 6c 61 74 65 7d 7d 7b | 5c 65 78 70 72 74 79 70 |plate}}{|\exprtyp|
|00001f70| 65 7d 20 5c 6e 6f 70 61 | 67 65 62 72 65 61 6b 0a |e} \nopa|gebreak.|
|00001f80| 5c 70 70 72 6f 74 6f 7b | 5c 62 61 63 6b 71 75 6f |\pproto{|\backquo|
|00001f90| 74 65 5c 68 79 70 65 72 | 7b 74 65 6d 70 6c 61 74 |te\hyper|{templat|
|00001fa0| 65 7d 7d 7b 5c 65 78 70 | 72 74 79 70 65 7d 7d 0a |e}}{\exp|rtype}}.|
|00001fb0| 5c 73 61 75 74 0a 5c 64 | 6f 63 0a 5c 65 6e 64 7b |\saut.\d|oc.\end{|
|00001fc0| 65 6e 74 72 79 7d 0a 0a | 5c 62 65 67 69 6e 7b 65 |entry}..|\begin{e|
|00001fd0| 6e 74 72 79 7d 7b 0a 5c | 70 72 6f 74 6f 7b 64 6f |ntry}{.\|proto{do|
|00001fe0| 74 69 6d 65 73 7d 7b 20 | 28 76 61 72 20 63 6f 75 |times}{ |(var cou|
|00001ff0| 6e 74 29 20 5c 68 79 70 | 65 72 69 7b 65 78 70 72 |nt) \hyp|eri{expr|
|00002000| 65 73 73 69 6f 6e 7d 20 | 5c 68 79 70 65 72 69 69 |ession} |\hyperii|
|00002010| 7b 65 78 70 72 65 73 73 | 69 6f 6e 7d 20 5c 64 6f |{express|ion} \do|
|00002020| 74 73 66 6f 6f 7d 20 7b | 5c 65 78 70 72 74 79 70 |tsfoo} {|\exprtyp|
|00002030| 65 7d 0a 5c 70 72 6f 74 | 6f 7b 64 6f 74 69 6d 65 |e}.\prot|o{dotime|
|00002040| 73 7d 7b 20 28 76 61 72 | 20 63 6f 75 6e 74 20 72 |s}{ (var| count r|
|00002050| 65 73 75 6c 74 29 20 5c | 68 79 70 65 72 69 7b 65 |esult) \|hyperi{e|
|00002060| 78 70 72 65 73 73 69 6f | 6e 7d 20 5c 68 79 70 65 |xpressio|n} \hype|
|00002070| 72 69 69 7b 65 78 70 72 | 65 73 73 69 6f 6e 7d 20 |rii{expr|ession} |
|00002080| 5c 64 6f 74 73 66 6f 6f | 7d 20 7b 5c 65 78 70 72 |\dotsfoo|} {\expr|
|00002090| 74 79 70 65 7d 7d 0a 5c | 73 61 75 74 20 0a 0a 5c |type}}.\|saut ..\|
|000020a0| 69 64 65 7b 44 6f 74 69 | 6d 65 73 7d 20 65 76 61 |ide{Doti|mes} eva|
|000020b0| 6c 75 61 74 65 73 20 74 | 68 65 20 5c 76 61 72 7b |luates t|he \var{|
|000020c0| 63 6f 75 6e 74 7d 20 66 | 6f 72 6d 2c 20 77 68 69 |count} f|orm, whi|
|000020d0| 63 68 20 6d 75 73 74 20 | 72 65 74 75 72 6e 20 61 |ch must |return a|
|000020e0| 6e 0a 69 6e 74 65 67 65 | 72 2e 20 20 49 74 20 74 |n.intege|r. It t|
|000020f0| 68 65 6e 20 65 76 61 6c | 75 61 74 65 73 20 74 68 |hen eval|uates th|
|00002100| 65 20 5c 68 79 70 65 72 | 7b 65 78 70 72 65 73 73 |e \hyper|{express|
|00002110| 69 6f 6e 7d 73 20 6f 6e | 63 65 20 66 6f 72 20 65 |ion}s on|ce for e|
|00002120| 61 63 68 0a 69 6e 74 65 | 67 65 72 20 66 72 6f 6d |ach.inte|ger from|
|00002130| 20 7a 65 72 6f 20 28 69 | 6e 63 6c 75 73 69 76 65 | zero (i|nclusive|
|00002140| 29 20 74 6f 20 5c 76 61 | 72 7b 63 6f 75 6e 74 7d |) to \va|r{count}|
|00002150| 20 28 65 78 63 6c 75 73 | 69 76 65 29 2c 20 69 6e | (exclus|ive), in|
|00002160| 20 6f 72 64 65 72 2c 0a | 77 69 74 68 20 74 68 65 | order,.|with the|
|00002170| 20 76 61 72 69 61 62 6c | 65 20 5c 76 61 72 7b 76 | variabl|e \var{v|
|00002180| 61 72 7d 20 62 6f 75 6e | 64 20 74 6f 20 74 68 65 |ar} boun|d to the|
|00002190| 20 69 6e 74 65 67 65 72 | 3b 20 69 66 20 74 68 65 | integer|; if the|
|000021a0| 20 76 61 6c 75 65 20 6f | 66 0a 5c 76 61 72 7b 63 | value o|f.\var{c|
|000021b0| 6f 75 6e 74 7d 20 69 73 | 20 7a 65 72 6f 20 6f 72 |ount} is| zero or|
|000021c0| 20 6e 65 67 61 74 69 76 | 65 2c 20 74 68 65 6e 20 | negativ|e, then |
|000021d0| 74 68 65 20 5c 68 79 70 | 65 72 7b 65 78 70 72 65 |the \hyp|er{expre|
|000021e0| 73 73 69 6f 6e 7d 73 20 | 61 72 65 20 6e 6f 74 0a |ssion}s |are not.|
|000021f0| 65 76 61 6c 75 61 74 65 | 64 2e 20 57 68 65 6e 20 |evaluate|d. When |
|00002200| 74 68 65 20 6c 6f 6f 70 | 20 63 6f 6d 70 6c 65 74 |the loop| complet|
|00002210| 65 73 2c 20 5c 76 61 72 | 7b 72 65 73 75 6c 74 7d |es, \var|{result}|
|00002220| 20 69 73 20 65 76 61 6c | 75 61 74 65 64 20 61 6e | is eval|uated an|
|00002230| 64 20 69 74 73 0a 76 61 | 6c 75 65 20 69 73 20 72 |d its.va|lue is r|
|00002240| 65 74 75 72 6e 65 64 20 | 61 73 20 74 68 65 20 76 |eturned |as the v|
|00002250| 61 6c 75 65 20 6f 66 20 | 74 68 65 20 5c 69 64 65 |alue of |the \ide|
|00002260| 7b 64 6f 74 69 6d 65 73 | 7d 20 65 78 70 72 65 73 |{dotimes|} expres|
|00002270| 73 69 6f 6e 2e 20 49 66 | 0a 5c 76 61 72 7b 72 65 |sion. If|.\var{re|
|00002280| 73 75 6c 74 7d 20 69 73 | 20 6f 6d 69 74 74 65 64 |sult} is| omitted|
|00002290| 2c 20 5c 69 64 65 7b 64 | 6f 74 69 6d 65 73 7d 20 |, \ide{d|otimes} |
|000022a0| 72 65 74 75 72 6e 73 20 | 7b 5c 73 63 68 66 61 6c |returns |{\schfal|
|000022b0| 73 65 7d 2e 0a 0a 5c 62 | 65 67 69 6e 7b 73 63 68 |se}...\b|egin{sch|
|000022c0| 65 6d 65 7d 0a 28 6c 65 | 74 20 28 28 6c 20 27 28 |eme}.(le|t ((l '(|
|000022d0| 29 29 29 0a 20 20 28 64 | 6f 74 69 6d 65 73 20 28 |))). (d|otimes (|
|000022e0| 69 20 34 20 6c 29 0a 20 | 20 20 20 20 28 73 65 74 |i 4 l). | (set|
|000022f0| 21 20 6c 20 28 63 6f 6e | 73 20 69 20 6c 29 29 29 |! l (con|s i l)))|
|00002300| 29 20 5c 6c 65 76 20 28 | 33 20 32 20 31 20 30 29 |) \lev (|3 2 1 0)|
|00002310| 0a 5c 65 6e 64 7b 73 63 | 68 65 6d 65 7d 0a 5c 65 |.\end{sc|heme}.\e|
|00002320| 6e 64 7b 65 6e 74 72 79 | 7d 0a 0a 5c 62 65 67 69 |nd{entry|}..\begi|
|00002330| 6e 7b 65 6e 74 72 79 7d | 7b 0a 5c 70 72 6f 74 6f |n{entry}|{.\proto|
|00002340| 7b 77 68 69 6c 65 7d 20 | 7b 20 5c 68 79 70 65 72 |{while} |{ \hyper|
|00002350| 7b 74 65 73 74 7d 20 5c | 68 79 70 65 72 69 7b 65 |{test} \|hyperi{e|
|00002360| 78 70 72 65 73 73 69 6f | 6e 7d 20 5c 68 79 70 65 |xpressio|n} \hype|
|00002370| 72 69 69 7b 65 78 70 72 | 65 73 73 69 6f 6e 7d 20 |rii{expr|ession} |
|00002380| 5c 64 6f 74 73 66 6f 6f | 7d 7b 5c 65 78 70 72 74 |\dotsfoo|}{\exprt|
|00002390| 79 70 65 7d 7d 0a 5c 73 | 61 75 74 0a 5c 69 64 65 |ype}}.\s|aut.\ide|
|000023a0| 7b 57 68 69 6c 65 7d 20 | 65 76 61 6c 75 61 74 65 |{While} |evaluate|
|000023b0| 73 20 74 68 65 20 5c 68 | 79 70 65 72 7b 65 78 70 |s the \h|yper{exp|
|000023c0| 72 65 73 73 69 6f 6e 7d | 73 20 75 6e 74 69 6c 20 |ression}|s until |
|000023d0| 5c 68 79 70 65 72 7b 74 | 65 73 74 7d 20 0a 72 65 |\hyper{t|est} .re|
|000023e0| 74 75 72 6e 73 20 61 20 | 66 61 6c 73 65 20 76 61 |turns a |false va|
|000023f0| 6c 75 65 2e 20 54 68 65 | 20 76 61 6c 75 65 20 6f |lue. The| value o|
|00002400| 66 20 61 20 5c 69 64 65 | 7b 77 68 69 6c 65 7d 20 |f a \ide|{while} |
|00002410| 63 6f 6e 73 74 72 75 63 | 74 20 69 73 20 75 6e 73 |construc|t is uns|
|00002420| 70 65 63 69 66 69 65 64 | 2e 0a 5c 65 6e 64 7b 65 |pecified|..\end{e|
|00002430| 6e 74 72 79 7d 0a 0a 5c | 62 65 67 69 6e 7b 65 6e |ntry}..\|begin{en|
|00002440| 74 72 79 7d 7b 0a 5c 70 | 72 6f 74 6f 7b 75 6e 74 |try}{.\p|roto{unt|
|00002450| 69 6c 7d 20 7b 20 5c 68 | 79 70 65 72 7b 74 65 73 |il} { \h|yper{tes|
|00002460| 74 7d 20 5c 68 79 70 65 | 72 69 7b 65 78 70 72 65 |t} \hype|ri{expre|
|00002470| 73 73 69 6f 6e 7d 20 5c | 68 79 70 65 72 69 69 7b |ssion} \|hyperii{|
|00002480| 65 78 70 72 65 73 73 69 | 6f 6e 7d 20 5c 64 6f 74 |expressi|on} \dot|
|00002490| 73 66 6f 6f 7d 7b 5c 65 | 78 70 72 74 79 70 65 7d |sfoo}{\e|xprtype}|
|000024a0| 7d 0a 5c 73 61 75 74 0a | 5c 69 64 65 7b 55 6e 74 |}.\saut.|\ide{Unt|
|000024b0| 69 6c 7d 20 65 76 61 6c | 75 61 74 65 73 20 74 68 |il} eval|uates th|
|000024c0| 65 20 5c 68 79 70 65 72 | 7b 65 78 70 72 65 73 73 |e \hyper|{express|
|000024d0| 69 6f 6e 7d 73 20 77 68 | 69 6c 65 20 5c 68 79 70 |ion}s wh|ile \hyp|
|000024e0| 65 72 7b 74 65 73 74 7d | 20 0a 72 65 74 75 72 6e |er{test}| .return|
|000024f0| 73 20 61 20 66 61 6c 73 | 65 20 76 61 6c 75 65 2e |s a fals|e value.|
|00002500| 20 54 68 65 20 76 61 6c | 75 65 20 6f 66 20 61 6e | The val|ue of an|
|00002510| 20 5c 69 64 65 7b 75 6e | 6c 65 73 73 7d 20 63 6f | \ide{un|less} co|
|00002520| 6e 73 74 72 75 63 74 20 | 69 73 20 75 6e 73 70 65 |nstruct |is unspe|
|00002530| 63 69 66 69 65 64 2e 0a | 5c 65 6e 64 7b 65 6e 74 |cified..|\end{ent|
|00002540| 72 79 7d 0a 25 25 25 25 | 25 25 25 25 25 25 25 25 |ry}.%%%%|%%%%%%%%|
|00002550| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00002560| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00002570| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00002580| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00002590| 25 25 0a 5c 73 65 63 74 | 69 6f 6e 7b 50 72 6f 67 |%%.\sect|ion{Prog|
|000025a0| 72 61 6d 20 73 74 72 75 | 63 74 75 72 65 7d 0a 0a |ram stru|cture}..|
|000025b0| 5c 64 6f 63 0a 25 25 25 | 25 25 25 25 25 25 25 25 |\doc.%%%|%%%%%%%%|
|000025c0| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|000025d0| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|000025e0| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|000025f0| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00002600| 25 25 25 0a 5c 73 65 63 | 74 69 6f 6e 7b 53 74 61 |%%%.\sec|tion{Sta|
|00002610| 6e 64 61 72 64 20 70 72 | 6f 63 65 64 75 72 65 73 |ndard pr|ocedures|
|00002620| 7d 0a 5c 6c 61 62 65 6c | 7b 69 6e 69 74 69 61 6c |}.\label|{initial|
|00002630| 65 6e 76 7d 0a 5c 6c 61 | 62 65 6c 7b 62 75 69 6c |env}.\la|bel{buil|
|00002640| 74 69 6e 63 68 61 70 74 | 65 72 7d 0a 0a 5c 6d 61 |tinchapt|er}..\ma|
|00002650| 69 6e 69 6e 64 65 78 7b | 69 6e 69 74 69 61 6c 20 |inindex{|initial |
|00002660| 65 6e 76 69 72 6f 6e 6d | 65 6e 74 7d 0a 5c 6d 61 |environm|ent}.\ma|
|00002670| 69 6e 69 6e 64 65 78 7b | 74 6f 70 20 6c 65 76 65 |inindex{|top leve|
|00002680| 6c 20 65 6e 76 69 72 6f | 6e 6d 65 6e 74 7d 0a 25 |l enviro|nment}.%|
|00002690| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|000026a0| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|000026b0| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|000026c0| 25 0a 5c 73 75 62 73 65 | 63 74 69 6f 6e 7b 42 6f |%.\subse|ction{Bo|
|000026d0| 6f 6c 65 61 6e 73 7d 0a | 5c 6c 61 62 65 6c 7b 62 |oleans}.|\label{b|
|000026e0| 6f 6f 6c 65 61 6e 73 65 | 63 74 69 6f 6e 7d 0a 0a |ooleanse|ction}..|
|000026f0| 49 6e 20 7b 5c 73 74 6b | 7d 20 74 68 65 20 62 6f |In {\stk|} the bo|
|00002700| 6f 6c 65 61 6e 20 76 61 | 6c 75 65 20 7b 5c 73 63 |olean va|lue {\sc|
|00002710| 68 66 61 6c 73 65 7d 20 | 69 73 20 64 69 66 66 65 |hfalse} |is diffe|
|00002720| 72 65 6e 74 20 66 72 6f | 6d 20 74 68 65 20 65 6d |rent fro|m the em|
|00002730| 70 74 79 20 6c 69 73 74 | 2c 20 61 73 0a 72 65 71 |pty list|, as.req|
|00002740| 75 69 72 65 64 20 62 79 | 20 5c 72 72 72 72 2e 0a |uired by| \rrrr..|
|00002750| 0a 5c 62 65 67 69 6e 7b | 65 6e 74 72 79 7d 7b 25 |.\begin{|entry}{%|
|00002760| 0a 5c 70 72 6f 74 6f 7b | 6e 6f 74 7d 7b 20 6f 62 |.\proto{|not}{ ob|
|00002770| 6a 7d 7b 70 72 6f 63 65 | 64 75 72 65 7d 0a 5c 70 |j}{proce|dure}.\p|
|00002780| 72 6f 74 6f 7b 62 6f 6f | 6c 65 61 6e 3f 7d 7b 20 |roto{boo|lean?}{ |
|00002790| 6f 62 6a 7d 7b 70 72 6f | 63 65 64 75 72 65 7d 7d |obj}{pro|cedure}}|
|000027a0| 0a 5c 73 61 75 74 0a 5c | 64 6f 63 0a 5c 65 6e 64 |.\saut.\|doc.\end|
|000027b0| 7b 65 6e 74 72 79 7d 0a | 0a 25 25 25 25 25 25 25 |{entry}.|.%%%%%%%|
|000027c0| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|000027d0| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|000027e0| 25 25 25 25 25 25 25 25 | 25 25 25 0a 5c 73 75 62 |%%%%%%%%|%%%.\sub|
|000027f0| 73 65 63 74 69 6f 6e 7b | 45 71 75 69 76 61 6c 65 |section{|Equivale|
|00002800| 6e 63 65 20 70 72 65 64 | 69 63 61 74 65 73 7d 0a |nce pred|icates}.|
|00002810| 5c 6c 61 62 65 6c 7b 65 | 71 75 69 76 61 6c 65 6e |\label{e|quivalen|
|00002820| 63 65 73 65 63 74 69 6f | 6e 7d 0a 0a 5c 62 65 67 |cesectio|n}..\beg|
|00002830| 69 6e 7b 65 6e 74 72 79 | 7d 7b 25 0a 5c 70 72 6f |in{entry|}{%.\pro|
|00002840| 74 6f 7b 65 71 76 3f 7d | 7b 20 5c 76 61 72 69 7b |to{eqv?}|{ \vari{|
|00002850| 6f 62 6a 7d 20 5c 76 61 | 72 69 69 7b 6f 62 6a 7d |obj} \va|rii{obj}|
|00002860| 7d 7b 70 72 6f 63 65 64 | 75 72 65 7d 7d 0a 5c 73 |}{proced|ure}}.\s|
|00002870| 61 75 74 0a 7b 5c 73 74 | 6b 7d 20 65 78 74 65 6e |aut.{\st|k} exten|
|00002880| 64 73 20 74 68 65 20 5c | 69 64 65 7b 65 71 76 3f |ds the \|ide{eqv?|
|00002890| 7d 20 70 72 65 64 69 63 | 61 74 65 20 64 65 66 69 |} predic|ate defi|
|000028a0| 6e 65 64 20 69 6e 20 74 | 68 65 20 7b 5c 72 72 72 |ned in t|he {\rrr|
|000028b0| 72 7d 20 74 6f 20 74 61 | 6b 65 0a 6b 65 79 77 6f |r} to ta|ke.keywo|
|000028c0| 72 64 73 20 69 6e 74 6f | 20 61 63 63 6f 75 6e 74 |rds into| account|
|000028d0| 3a 20 69 66 20 5c 76 61 | 72 69 7b 6f 62 6a 7d 20 |: if \va|ri{obj} |
|000028e0| 61 6e 64 20 5c 76 61 72 | 69 69 7b 6f 62 6a 7d 20 |and \var|ii{obj} |
|000028f0| 61 72 65 20 62 6f 74 68 | 0a 6b 65 79 77 6f 72 64 |are both|.keyword|
|00002900| 73 2c 20 74 68 65 20 5c | 69 64 65 7b 65 71 76 3f |s, the \|ide{eqv?|
|00002910| 7d 20 70 72 65 64 69 63 | 61 74 65 20 77 69 6c 6c |} predic|ate will|
|00002920| 20 79 69 65 6c 64 20 7b | 5c 73 63 68 74 72 75 65 | yield {|\schtrue|
|00002930| 7d 20 69 66 20 61 6e 64 | 20 6f 6e 6c 79 0a 69 66 |} if and| only.if|
|00002940| 0a 5c 62 65 67 69 6e 7b | 73 63 68 65 6d 65 7d 0a |.\begin{|scheme}.|
|00002950| 28 73 74 72 69 6e 67 3d | 3f 20 28 6b 65 79 77 6f |(string=|? (keywo|
|00002960| 72 64 2d 3e 73 74 72 69 | 6e 67 20 6f 62 6a 31 29 |rd->stri|ng obj1)|
|00002970| 0a 20 20 20 20 20 20 20 | 20 20 20 28 6b 65 79 77 |. | (keyw|
|00002980| 6f 72 64 2d 3e 73 74 72 | 69 6e 67 20 6f 62 6a 32 |ord->str|ing obj2|
|00002990| 29 29 0a 20 20 20 20 5c | 65 76 20 20 5c 73 63 68 |)). \|ev \sch|
|000029a0| 74 72 75 65 25 0a 5c 65 | 6e 64 7b 73 63 68 65 6d |true%.\e|nd{schem|
|000029b0| 65 7d 0a 5c 65 6e 64 7b | 65 6e 74 72 79 7d 0a 0a |e}.\end{|entry}..|
|000029c0| 25 25 25 25 20 45 51 3f | 0a 5c 62 65 67 69 6e 7b |%%%% EQ?|.\begin{|
|000029d0| 65 6e 74 72 79 7d 7b 25 | 0a 5c 70 72 6f 74 6f 7b |entry}{%|.\proto{|
|000029e0| 65 71 3f 7d 7b 20 5c 76 | 61 72 69 7b 6f 62 6a 7d |eq?}{ \v|ari{obj}|
|000029f0| 20 5c 76 61 72 69 69 7b | 6f 62 6a 7d 7d 7b 70 72 | \varii{|obj}}{pr|
|00002a00| 6f 63 65 64 75 72 65 7d | 7d 0a 5c 73 61 75 74 0a |ocedure}|}.\saut.|
|00002a10| 7b 5c 73 74 6b 7d 20 65 | 78 74 65 6e 64 73 20 74 |{\stk} e|xtends t|
|00002a20| 68 65 20 5c 69 64 65 7b | 65 71 3f 7d 20 70 72 65 |he \ide{|eq?} pre|
|00002a30| 64 69 63 61 74 65 20 64 | 65 66 69 6e 65 64 20 69 |dicate d|efined i|
|00002a40| 6e 20 7b 5c 72 72 72 72 | 7d 20 74 6f 20 74 61 6b |n {\rrrr|} to tak|
|00002a50| 65 0a 6b 65 79 77 6f 72 | 64 73 20 69 6e 74 6f 20 |e.keywor|ds into |
|00002a60| 61 63 63 6f 75 6e 74 2e | 20 4f 6e 20 6b 65 79 77 |account.| On keyw|
|00002a70| 6f 72 64 73 2c 20 5c 69 | 64 65 7b 65 71 3f 7d 20 |ords, \i|de{eq?} |
|00002a80| 62 65 68 61 76 65 73 20 | 6c 69 6b 65 20 5c 69 64 |behaves |like \id|
|00002a90| 65 7b 65 71 76 3f 7d 2e | 0a 0a 5c 62 65 67 69 6e |e{eqv?}.|..\begin|
|00002aa0| 7b 73 63 68 65 6d 65 7d | 0a 28 65 71 3f 20 3a 6b |{scheme}|.(eq? :k|
|00002ab0| 65 79 20 3a 6b 65 79 29 | 20 20 20 20 20 20 20 20 |ey :key)| |
|00002ac0| 20 20 20 20 20 20 20 20 | 20 5c 65 76 20 20 5c 73 | | \ev \s|
|00002ad0| 63 68 74 72 75 65 0a 5c | 65 6e 64 7b 73 63 68 65 |chtrue.\|end{sche|
|00002ae0| 6d 65 7d 0a 5c 65 6e 64 | 7b 65 6e 74 72 79 7d 0a |me}.\end|{entry}.|
|00002af0| 0a 25 25 25 25 20 45 51 | 55 41 4c 3f 0a 5c 62 65 |.%%%% EQ|UAL?.\be|
|00002b00| 67 69 6e 7b 65 6e 74 72 | 79 7d 7b 25 0a 5c 70 72 |gin{entr|y}{%.\pr|
|00002b10| 6f 74 6f 7b 65 71 75 61 | 6c 3f 7d 7b 20 5c 76 61 |oto{equa|l?}{ \va|
|00002b20| 72 69 7b 6f 62 6a 7d 20 | 5c 76 61 72 69 69 7b 6f |ri{obj} |\varii{o|
|00002b30| 62 6a 7d 7d 7b 70 72 6f | 63 65 64 75 72 65 7d 7d |bj}}{pro|cedure}}|
|00002b40| 0a 5c 73 61 75 74 0a 7b | 5c 64 6f 63 7d 0a 5c 65 |.\saut.{|\doc}.\e|
|00002b50| 6e 64 7b 65 6e 74 72 79 | 7d 0a 0a 25 25 25 25 25 |nd{entry|}..%%%%%|
|00002b60| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00002b70| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00002b80| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 0a 5c 73 |%%%%%%%%|%%%%%.\s|
|00002b90| 75 62 73 65 63 74 69 6f | 6e 7b 50 61 69 72 73 20 |ubsectio|n{Pairs |
|00002ba0| 61 6e 64 20 6c 69 73 74 | 73 7d 0a 5c 6c 61 62 65 |and list|s}.\labe|
|00002bb0| 6c 7b 6c 69 73 74 73 65 | 63 74 69 6f 6e 7d 0a 0a |l{listse|ction}..|
|00002bc0| 5c 62 65 67 69 6e 7b 65 | 6e 74 72 79 7d 7b 25 0a |\begin{e|ntry}{%.|
|00002bd0| 5c 70 72 6f 74 6f 7b 70 | 61 69 72 3f 7d 7b 20 6f |\proto{p|air?}{ o|
|00002be0| 62 6a 7d 7b 70 72 6f 63 | 65 64 75 72 65 7d 0a 5c |bj}{proc|edure}.\|
|00002bf0| 70 72 6f 74 6f 7b 63 6f | 6e 73 7d 7b 20 5c 76 61 |proto{co|ns}{ \va|
|00002c00| 72 69 7b 6f 62 6a 7d 20 | 5c 76 61 72 69 69 7b 6f |ri{obj} |\varii{o|
|00002c10| 62 6a 7d 7d 7b 70 72 6f | 63 65 64 75 72 65 7d 0a |bj}}{pro|cedure}.|
|00002c20| 5c 70 72 6f 74 6f 7b 63 | 61 72 7d 7b 20 70 61 69 |\proto{c|ar}{ pai|
|00002c30| 72 7d 7b 70 72 6f 63 65 | 64 75 72 65 7d 0a 5c 70 |r}{proce|dure}.\p|
|00002c40| 72 6f 74 6f 7b 63 64 72 | 7d 7b 20 70 61 69 72 7d |roto{cdr|}{ pair}|
|00002c50| 7b 70 72 6f 63 65 64 75 | 72 65 7d 0a 5c 70 72 6f |{procedu|re}.\pro|
|00002c60| 74 6f 7b 73 65 74 2d 63 | 61 72 21 7d 7b 20 70 61 |to{set-c|ar!}{ pa|
|00002c70| 69 72 20 6f 62 6a 7d 7b | 70 72 6f 63 65 64 75 72 |ir obj}{|procedur|
|00002c80| 65 7d 0a 5c 70 72 6f 74 | 6f 7b 73 65 74 2d 63 64 |e}.\prot|o{set-cd|
|00002c90| 72 21 7d 7b 20 70 61 69 | 72 20 6f 62 6a 7d 7b 70 |r!}{ pai|r obj}{p|
|00002ca0| 72 6f 63 65 64 75 72 65 | 7d 0a 5c 73 65 74 62 6f |rocedure|}.\setbo|
|00002cb0| 78 30 5c 68 62 6f 78 7b | 5c 74 74 28 63 61 64 72 |x0\hbox{|\tt(cadr|
|00002cc0| 20 5c 76 61 72 7b 70 61 | 69 72 7d 29 7d 0a 5c 73 | \var{pa|ir})}.\s|
|00002cd0| 65 74 62 6f 78 31 5c 68 | 62 6f 78 7b 70 72 6f 63 |etbox1\h|box{proc|
|00002ce0| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 63 61 |edure}.\|proto{ca|
|00002cf0| 61 72 7d 7b 20 70 61 69 | 72 7d 7b 70 72 6f 63 65 |ar}{ pai|r}{proce|
|00002d00| 64 75 72 65 7d 0a 5c 70 | 72 6f 74 6f 7b 63 61 64 |dure}.\p|roto{cad|
|00002d10| 72 7d 7b 20 70 61 69 72 | 7d 7b 70 72 6f 63 65 64 |r}{ pair|}{proced|
|00002d20| 75 72 65 7d 0a 5c 70 70 | 72 6f 74 6f 7b 5c 68 62 |ure}.\pp|roto{\hb|
|00002d30| 6f 78 20 74 6f 20 31 5c | 77 64 30 20 7b 5c 68 66 |ox to 1\|wd0 {\hf|
|00002d40| 69 6c 24 5c 76 64 6f 74 | 73 24 5c 68 66 69 6c 7d |il$\vdot|s$\hfil}|
|00002d50| 7d 7b 5c 68 62 6f 78 20 | 74 6f 20 31 5c 77 64 31 |}{\hbox |to 1\wd1|
|00002d60| 20 7b 5c 68 66 69 6c 24 | 5c 76 64 6f 74 73 24 5c | {\hfil$|\vdots$\|
|00002d70| 68 66 69 6c 7d 7d 0a 5c | 70 72 6f 74 6f 7b 63 64 |hfil}}.\|proto{cd|
|00002d80| 64 64 61 72 7d 7b 20 70 | 61 69 72 7d 7b 70 72 6f |ddar}{ p|air}{pro|
|00002d90| 63 65 64 75 72 65 7d 0a | 5c 70 72 6f 74 6f 7b 63 |cedure}.|\proto{c|
|00002da0| 64 64 64 64 72 7d 7b 20 | 70 61 69 72 7d 7b 70 72 |ddddr}{ |pair}{pr|
|00002db0| 6f 63 65 64 75 72 65 7d | 0a 5c 70 72 6f 74 6f 7b |ocedure}|.\proto{|
|00002dc0| 6e 75 6c 6c 3f 7d 7b 20 | 6f 62 6a 7d 7b 70 72 6f |null?}{ |obj}{pro|
|00002dd0| 63 65 64 75 72 65 7d 0a | 5c 70 72 6f 74 6f 7b 6c |cedure}.|\proto{l|
|00002de0| 69 73 74 3f 7d 7b 20 6f | 62 6a 7d 7b 70 72 6f 63 |ist?}{ o|bj}{proc|
|00002df0| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 6c 69 |edure}.\|proto{li|
|00002e00| 73 74 7d 7b 20 5c 76 61 | 72 7b 6f 62 6a 7d 20 5c |st}{ \va|r{obj} \|
|00002e10| 64 6f 74 73 66 6f 6f 7d | 7b 70 72 6f 63 65 64 75 |dotsfoo}|{procedu|
|00002e20| 72 65 7d 0a 5c 70 72 6f | 74 6f 7b 6c 65 6e 67 74 |re}.\pro|to{lengt|
|00002e30| 68 7d 7b 20 6c 69 73 74 | 7d 7b 70 72 6f 63 65 64 |h}{ list|}{proced|
|00002e40| 75 72 65 7d 0a 5c 70 72 | 6f 74 6f 7b 61 70 70 65 |ure}.\pr|oto{appe|
|00002e50| 6e 64 7d 7b 20 6c 69 73 | 74 20 5c 64 6f 74 73 66 |nd}{ lis|t \dotsf|
|00002e60| 6f 6f 7d 7b 70 72 6f 63 | 65 64 75 72 65 7d 0a 5c |oo}{proc|edure}.\|
|00002e70| 70 72 6f 74 6f 7b 72 65 | 76 65 72 73 65 7d 7b 20 |proto{re|verse}{ |
|00002e80| 6c 69 73 74 7d 7b 70 72 | 6f 63 65 64 75 72 65 7d |list}{pr|ocedure}|
|00002e90| 0a 5c 70 72 6f 74 6f 7b | 6c 69 73 74 2d 74 61 69 |.\proto{|list-tai|
|00002ea0| 6c 7d 7b 20 6c 69 73 74 | 20 5c 76 72 7b 6b 7d 7d |l}{ list| \vr{k}}|
|00002eb0| 7b 70 72 6f 63 65 64 75 | 72 65 7d 0a 5c 70 72 6f |{procedu|re}.\pro|
|00002ec0| 74 6f 7b 6c 69 73 74 2d | 72 65 66 7d 7b 20 6c 69 |to{list-|ref}{ li|
|00002ed0| 73 74 20 5c 76 72 7b 6b | 7d 7d 7b 70 72 6f 63 65 |st \vr{k|}}{proce|
|00002ee0| 64 75 72 65 7d 0a 5c 70 | 72 6f 74 6f 7b 6d 65 6d |dure}.\p|roto{mem|
|00002ef0| 71 7d 7b 20 6f 62 6a 20 | 6c 69 73 74 7d 7b 70 72 |q}{ obj |list}{pr|
|00002f00| 6f 63 65 64 75 72 65 7d | 0a 5c 70 72 6f 74 6f 7b |ocedure}|.\proto{|
|00002f10| 6d 65 6d 76 7d 7b 20 6f | 62 6a 20 6c 69 73 74 7d |memv}{ o|bj list}|
|00002f20| 7b 70 72 6f 63 65 64 75 | 72 65 7d 0a 5c 70 72 6f |{procedu|re}.\pro|
|00002f30| 74 6f 7b 6d 65 6d 62 65 | 72 7d 7b 20 6f 62 6a 20 |to{membe|r}{ obj |
|00002f40| 6c 69 73 74 7d 7b 70 72 | 6f 63 65 64 75 72 65 7d |list}{pr|ocedure}|
|00002f50| 0a 5c 70 72 6f 74 6f 7b | 61 73 73 71 7d 7b 20 6f |.\proto{|assq}{ o|
|00002f60| 62 6a 20 61 6c 69 73 74 | 7d 7b 70 72 6f 63 65 64 |bj alist|}{proced|
|00002f70| 75 72 65 7d 0a 5c 70 72 | 6f 74 6f 7b 61 73 73 76 |ure}.\pr|oto{assv|
|00002f80| 7d 7b 20 6f 62 6a 20 61 | 6c 69 73 74 7d 7b 70 72 |}{ obj a|list}{pr|
|00002f90| 6f 63 65 64 75 72 65 7d | 0a 5c 70 72 6f 74 6f 7b |ocedure}|.\proto{|
|00002fa0| 61 73 73 6f 63 7d 7b 20 | 6f 62 6a 20 61 6c 69 73 |assoc}{ |obj alis|
|00002fb0| 74 7d 7b 70 72 6f 63 65 | 64 75 72 65 7d 7d 0a 5c |t}{proce|dure}}.\|
|00002fc0| 73 61 75 74 0a 5c 64 6f | 63 0a 5c 65 6e 64 7b 65 |saut.\do|c.\end{e|
|00002fd0| 6e 74 72 79 7d 0a 0a 5c | 62 65 67 69 6e 7b 65 6e |ntry}..\|begin{en|
|00002fe0| 74 72 79 7d 7b 25 0a 5c | 70 72 6f 74 6f 7b 6c 69 |try}{%.\|proto{li|
|00002ff0| 73 74 2a 7d 7b 20 6f 62 | 6a 7d 7b 70 72 6f 63 65 |st*}{ ob|j}{proce|
|00003000| 64 75 72 65 7d 7d 0a 5c | 73 61 75 74 0a 5c 69 64 |dure}}.\|saut.\id|
|00003010| 65 7b 6c 69 73 74 2a 7d | 20 69 73 20 6c 69 6b 65 |e{list*}| is like|
|00003020| 20 5c 69 64 65 7b 6c 69 | 73 74 7d 20 65 78 63 65 | \ide{li|st} exce|
|00003030| 70 74 20 74 68 61 74 20 | 74 68 65 20 6c 61 73 74 |pt that |the last|
|00003040| 20 61 72 67 75 6d 65 6e | 74 20 74 6f 20 5c 69 64 | argumen|t to \id|
|00003050| 65 7b 6c 69 73 74 2a 7d | 20 69 73 0a 75 73 65 64 |e{list*}| is.used|
|00003060| 20 61 73 20 74 68 65 20 | 7b 5c 65 6d 20 63 64 72 | as the |{\em cdr|
|00003070| 7d 20 6f 66 20 74 68 65 | 20 6c 61 73 74 20 70 61 |} of the| last pa|
|00003080| 69 72 20 63 6f 6e 73 74 | 72 75 63 74 65 64 2e 0a |ir const|ructed..|
|00003090| 5c 62 65 67 69 6e 7b 73 | 63 68 65 6d 65 7d 0a 28 |\begin{s|cheme}.(|
|000030a0| 6c 69 73 74 2a 20 31 20 | 32 20 33 29 20 5c 65 76 |list* 1 |2 3) \ev|
|000030b0| 20 28 31 20 32 20 2e 20 | 33 29 0a 28 6c 69 73 74 | (1 2 . |3).(list|
|000030c0| 2a 20 31 20 32 20 33 20 | 27 28 34 20 35 29 29 20 |* 1 2 3 |'(4 5)) |
|000030d0| 5c 65 76 20 28 31 20 32 | 20 33 20 34 20 35 29 0a |\ev (1 2| 3 4 5).|
|000030e0| 5c 65 6e 64 7b 73 63 68 | 65 6d 65 7d 0a 5c 65 6e |\end{sch|eme}.\en|
|000030f0| 64 7b 65 6e 74 72 79 7d | 0a 0a 5c 62 65 67 69 6e |d{entry}|..\begin|
|00003100| 7b 65 6e 74 72 79 7d 7b | 25 0a 5c 70 72 6f 74 6f |{entry}{|%.\proto|
|00003110| 7b 63 6f 70 79 2d 74 72 | 65 65 7d 7b 20 6f 62 6a |{copy-tr|ee}{ obj|
|00003120| 7d 7b 70 72 6f 63 65 64 | 75 72 65 7d 7d 0a 5c 73 |}{proced|ure}}.\s|
|00003130| 61 75 74 0a 5c 69 64 65 | 7b 43 6f 70 79 2d 74 72 |aut.\ide|{Copy-tr|
|00003140| 65 65 7d 20 72 65 63 75 | 72 73 69 76 65 6c 79 20 |ee} recu|rsively |
|00003150| 63 6f 70 69 65 73 20 74 | 72 65 65 73 20 6f 66 20 |copies t|rees of |
|00003160| 70 61 69 72 73 2e 20 49 | 66 20 5c 69 64 65 7b 6f |pairs. I|f \ide{o|
|00003170| 62 6a 7d 20 69 73 20 6e | 6f 74 0a 61 20 70 61 69 |bj} is n|ot.a pai|
|00003180| 72 2c 20 69 74 20 69 73 | 20 72 65 74 75 72 6e 65 |r, it is| returne|
|00003190| 64 3b 20 6f 74 68 65 72 | 77 69 73 65 20 74 68 65 |d; other|wise the|
|000031a0| 20 72 65 73 75 6c 74 20 | 69 73 20 61 20 6e 65 77 | result |is a new|
|000031b0| 20 70 61 69 72 20 77 68 | 6f 73 65 20 7b 5c 65 6d | pair wh|ose {\em|
|000031c0| 0a 20 20 63 61 72 7d 20 | 61 6e 64 20 7b 5c 65 6d |. car} |and {\em|
|000031d0| 20 63 64 72 7d 20 61 72 | 65 20 6f 62 74 61 69 6e | cdr} ar|e obtain|
|000031e0| 65 64 20 62 79 20 63 61 | 6c 6c 69 6e 67 20 5c 69 |ed by ca|lling \i|
|000031f0| 64 65 7b 63 6f 70 79 2d | 74 72 65 65 7d 20 6f 6e |de{copy-|tree} on|
|00003200| 20 74 68 65 0a 7b 5c 65 | 6d 20 63 61 72 7d 20 61 | the.{\e|m car} a|
|00003210| 6e 64 20 7b 5c 65 6d 20 | 63 64 72 7d 20 6f 66 20 |nd {\em |cdr} of |
|00003220| 5c 69 64 65 7b 6f 62 6a | 7d 2c 20 72 65 73 70 65 |\ide{obj|}, respe|
|00003230| 63 74 69 76 65 6c 79 2e | 0a 5c 65 6e 64 7b 65 6e |ctively.|.\end{en|
|00003240| 74 72 79 7d 0a 0a 0a 25 | 25 25 25 25 25 25 25 25 |try}...%|%%%%%%%%|
|00003250| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00003260| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00003270| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00003280| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00003290| 25 25 25 25 25 0a 5c 73 | 75 62 73 65 63 74 69 6f |%%%%%.\s|ubsectio|
|000032a0| 6e 7b 53 79 6d 62 6f 6c | 73 7d 0a 5c 6c 61 62 65 |n{Symbol|s}.\labe|
|000032b0| 6c 7b 73 79 6d 62 6f 6c | 73 65 63 74 69 6f 6e 7d |l{symbol|section}|
|000032c0| 0a 0a 54 68 65 20 7b 5c | 73 74 6b 7d 20 72 65 61 |..The {\|stk} rea|
|000032d0| 64 65 72 20 63 61 6e 20 | 63 6f 70 65 20 77 69 74 |der can |cope wit|
|000032e0| 68 20 73 79 6d 62 6f 6c | 73 20 77 68 6f 73 65 20 |h symbol|s whose |
|000032f0| 6e 61 6d 65 73 20 63 6f | 6e 74 61 69 6e 20 73 70 |names co|ntain sp|
|00003300| 65 63 69 61 6c 0a 63 68 | 61 72 61 63 74 65 72 73 |ecial.ch|aracters|
|00003310| 20 6f 72 20 6c 65 74 74 | 65 72 73 20 69 6e 20 74 | or lett|ers in t|
|00003320| 68 65 20 6e 6f 6e 20 73 | 74 61 6e 64 61 72 64 20 |he non s|tandard |
|00003330| 63 61 73 65 2e 20 20 57 | 68 65 6e 20 61 20 73 79 |case. W|hen a sy|
|00003340| 6d 62 6f 6c 20 69 73 0a | 72 65 61 64 2c 20 74 68 |mbol is.|read, th|
|00003350| 65 20 70 61 72 74 73 20 | 65 6e 63 6c 6f 73 65 64 |e parts |enclosed|
|00003360| 20 69 6e 20 62 61 72 73 | 20 28 60 60 5c 76 65 72 | in bars| (``\ver|
|00003370| 62 2b 7c 2b 27 27 29 20 | 77 69 6c 6c 20 62 65 20 |b+|+'') |will be |
|00003380| 65 6e 74 65 72 65 64 0a | 76 65 72 62 61 74 69 6d |entered.|verbatim|
|00003390| 20 69 6e 74 6f 20 74 68 | 65 20 73 79 6d 62 6f 6c | into th|e symbol|
|000033a0| 27 73 20 6e 61 6d 65 2e | 20 54 68 65 20 60 60 5c |'s name.| The ``\|
|000033b0| 76 65 72 62 2b 7c 2b 27 | 27 20 63 68 61 72 61 63 |verb+|+'|' charac|
|000033c0| 74 65 72 73 20 61 72 65 | 20 6e 6f 74 0a 70 61 72 |ters are| not.par|
|000033d0| 74 20 6f 66 20 74 68 65 | 20 73 79 6d 62 6f 6c 3b |t of the| symbol;|
|000033e0| 20 74 68 65 79 20 6f 6e | 6c 79 20 73 65 72 76 65 | they on|ly serve|
|000033f0| 20 74 6f 20 64 65 6c 69 | 6d 69 74 20 74 68 65 20 | to deli|mit the |
|00003400| 73 65 71 75 65 6e 63 65 | 20 6f 66 0a 63 68 61 72 |sequence| of.char|
|00003410| 61 63 74 65 72 73 20 74 | 68 61 74 20 6d 75 73 74 |acters t|hat must|
|00003420| 20 62 65 20 65 6e 74 65 | 72 65 64 20 60 60 61 73 | be ente|red ``as|
|00003430| 20 69 73 27 27 2e 20 49 | 6e 20 6f 72 64 65 72 20 | is''. I|n order |
|00003440| 74 6f 20 6d 61 69 6e 74 | 61 69 6e 0a 72 65 61 64 |to maint|ain.read|
|00003450| 2d 77 72 69 74 65 20 69 | 6e 76 61 72 69 61 6e 63 |-write i|nvarianc|
|00003460| 65 2c 20 73 79 6d 62 6f | 6c 73 20 63 6f 6e 74 61 |e, symbo|ls conta|
|00003470| 69 6e 69 6e 67 20 73 75 | 63 68 20 73 65 71 75 65 |ining su|ch seque|
|00003480| 6e 63 65 73 20 6f 66 20 | 73 70 65 63 69 61 6c 0a |nces of |special.|
|00003490| 63 68 61 72 61 63 74 65 | 72 73 20 77 69 6c 6c 20 |characte|rs will |
|000034a0| 62 65 20 77 72 69 74 74 | 65 6e 20 62 65 74 77 65 |be writt|en betwe|
|000034b0| 65 6e 20 61 20 70 61 69 | 72 20 6f 66 20 60 60 5c |en a pai|r of ``\|
|000034c0| 76 65 72 62 2b 7c 2b 27 | 27 0a 0a 5c 62 65 67 69 |verb+|+'|'..\begi|
|000034d0| 6e 7b 73 63 68 65 6d 65 | 7d 0a 27 7c 78 7c 20 20 |n{scheme|}.'|x| |
|000034e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000034f0| 5c 65 76 20 78 0a 28 73 | 74 72 69 6e 67 2d 3e 73 |\ev x.(s|tring->s|
|00003500| 79 6d 62 6f 6c 20 22 58 | 22 29 20 20 5c 65 76 20 |ymbol "X|") \ev |
|00003510| 7c 58 7c 0a 28 73 79 6d | 62 6f 6c 2d 3e 73 74 72 ||X|.(sym|bol->str|
|00003520| 69 6e 67 20 27 7c 58 7c | 29 20 5c 65 76 20 22 58 |ing '|X||) \ev "X|
|00003530| 22 0a 27 7c 61 20 20 62 | 7c 20 20 20 20 20 20 20 |".'|a b|| |
|00003540| 20 20 20 20 20 20 20 20 | 5c 65 76 20 7c 61 20 20 | |\ev |a |
|00003550| 62 7c 0a 27 61 7c 42 7c | 63 20 20 20 20 20 20 20 |b|.'a|B||c |
|00003560| 20 20 20 20 20 20 20 20 | 20 5c 65 76 20 7c 61 42 | | \ev |aB|
|00003570| 63 7c 0a 28 77 72 69 74 | 65 20 27 7c 46 6f 4f 7c |c|.(writ|e '|FoO||
|00003580| 29 20 20 20 20 20 20 20 | 20 5c 65 76 20 77 72 69 |) | \ev wri|
|00003590| 74 65 73 20 74 68 65 20 | 73 74 72 69 6e 67 20 22 |tes the |string "|
|000035a0| 7c 46 6f 4f 7c 22 20 0a | 28 64 69 73 70 6c 61 79 ||FoO|" .|(display|
|000035b0| 20 27 7c 46 6f 4f 7c 29 | 20 20 20 20 20 20 5c 65 | '|FoO|)| \e|
|000035c0| 76 20 77 72 69 74 65 73 | 20 74 68 65 20 73 74 72 |v writes| the str|
|000035d0| 69 6e 67 20 22 46 6f 4f | 22 20 0a 5c 65 6e 64 7b |ing "FoO|" .\end{|
|000035e0| 73 63 68 65 6d 65 7d 0a | 0a 5c 62 65 67 69 6e 7b |scheme}.|.\begin{|
|000035f0| 6e 6f 74 65 7d 0a 20 20 | 54 68 69 73 20 6e 6f 74 |note}. |This not|
|00003600| 61 74 69 6f 6e 20 68 61 | 73 20 62 65 65 6e 20 69 |ation ha|s been i|
|00003610| 6e 74 72 6f 64 75 63 65 | 64 20 62 65 63 61 75 73 |ntroduce|d becaus|
|00003620| 65 20 7b 5c 72 72 72 72 | 7d 20 73 74 61 74 65 73 |e {\rrrr|} states|
|00003630| 20 74 68 61 74 20 63 61 | 73 65 0a 20 20 6d 75 73 | that ca|se. mus|
|00003640| 74 20 6e 6f 74 20 62 65 | 20 73 69 67 6e 69 66 69 |t not be| signifi|
|00003650| 63 61 6e 74 20 69 6e 20 | 73 79 6d 62 6f 6c 73 20 |cant in |symbols |
|00003660| 77 68 65 72 65 61 73 20 | 74 68 65 20 54 6b 20 74 |whereas |the Tk t|
|00003670| 6f 6f 6c 6b 69 74 20 69 | 73 20 63 61 73 65 0a 20 |oolkit i|s case. |
|00003680| 20 73 69 67 6e 69 66 69 | 63 61 6e 74 20 28 6f 72 | signifi|cant (or|
|00003690| 20 6d 6f 72 65 20 70 72 | 65 63 69 73 65 6c 79 20 | more pr|ecisely |
|000036a0| 74 68 69 6e 6b 73 20 69 | 74 20 72 75 6e 73 20 6f |thinks i|t runs o|
|000036b0| 76 65 72 20 54 63 6c 20 | 77 68 69 63 68 20 69 73 |ver Tcl |which is|
|000036c0| 20 63 61 73 65 0a 20 20 | 73 69 67 6e 69 66 69 63 | case. |signific|
|000036d0| 61 6e 74 29 2e 20 25 25 | 20 61 78 65 3a 0a 20 20 |ant). %%| axe:. |
|000036e0| 48 6f 77 65 76 65 72 2c | 20 73 79 6d 62 6f 6c 73 |However,| symbols|
|000036f0| 20 63 6f 6e 74 61 69 6e | 69 6e 67 20 74 68 65 20 | contain|ing the |
|00003700| 63 68 61 72 61 63 74 65 | 72 20 60 60 5c 76 65 72 |characte|r ``\ver|
|00003710| 62 2b 7c 2b 27 27 20 69 | 74 73 65 6c 66 20 73 74 |b+|+'' i|tself st|
|00003720| 69 6c 6c 0a 20 20 63 61 | 6e 27 74 20 62 65 20 72 |ill. ca|n't be r|
|00003730| 65 61 64 20 69 6e 2e 0a | 5c 65 6e 64 7b 6e 6f 74 |ead in..|\end{not|
|00003740| 65 7d 0a 0a 5c 62 65 67 | 69 6e 7b 65 6e 74 72 79 |e}..\beg|in{entry|
|00003750| 7d 7b 25 0a 5c 70 72 6f | 74 6f 7b 73 79 6d 62 6f |}{%.\pro|to{symbo|
|00003760| 6c 3f 7d 7b 20 6f 62 6a | 7d 7b 70 72 6f 63 65 64 |l?}{ obj|}{proced|
|00003770| 75 72 65 7d 7d 0a 5c 73 | 61 75 74 0a 52 65 74 75 |ure}}.\s|aut.Retu|
|00003780| 72 6e 73 20 5c 73 63 68 | 74 72 75 65 7b 7d 20 69 |rns \sch|true{} i|
|00003790| 66 20 5c 76 61 72 7b 6f | 62 6a 7d 20 69 73 20 61 |f \var{o|bj} is a|
|000037a0| 20 73 79 6d 62 6f 6c 2c | 20 6f 74 68 65 72 77 69 | symbol,| otherwi|
|000037b0| 73 65 20 72 65 74 75 72 | 6e 73 20 7b 5c 73 63 68 |se retur|ns {\sch|
|000037c0| 66 61 6c 73 65 7d 2e 0a | 0a 5c 62 65 67 69 6e 7b |false}..|.\begin{|
|000037d0| 73 63 68 65 6d 65 7d 0a | 28 73 79 6d 62 6f 6c 3f |scheme}.|(symbol?|
|000037e0| 20 27 66 6f 6f 29 20 20 | 20 20 20 20 20 20 20 20 | 'foo) | |
|000037f0| 5c 65 76 20 20 5c 73 63 | 68 74 72 75 65 0a 28 73 |\ev \sc|htrue.(s|
|00003800| 79 6d 62 6f 6c 3f 20 28 | 63 61 72 20 27 28 61 20 |ymbol? (|car '(a |
|00003810| 62 29 29 29 20 20 5c 65 | 76 20 20 5c 73 63 68 74 |b))) \e|v \scht|
|00003820| 72 75 65 0a 28 73 79 6d | 62 6f 6c 3f 20 22 62 61 |rue.(sym|bol? "ba|
|00003830| 72 22 29 20 20 20 20 20 | 20 20 20 20 5c 65 76 20 |r") | \ev |
|00003840| 20 5c 73 63 68 66 61 6c | 73 65 0a 28 73 79 6d 62 | \schfal|se.(symb|
|00003850| 6f 6c 3f 20 27 6e 69 6c | 29 20 20 20 20 20 20 20 |ol? 'nil|) |
|00003860| 20 20 20 5c 65 76 20 20 | 5c 73 63 68 74 72 75 65 | \ev |\schtrue|
|00003870| 0a 28 73 79 6d 62 6f 6c | 3f 20 27 28 29 29 20 20 |.(symbol|? '()) |
|00003880| 20 20 20 20 20 20 20 20 | 20 5c 65 76 20 20 5c 73 | | \ev \s|
|00003890| 63 68 66 61 6c 73 65 0a | 28 73 79 6d 62 6f 6c 3f |chfalse.|(symbol?|
|000038a0| 20 5c 73 63 68 66 61 6c | 73 65 29 20 20 20 20 20 | \schfal|se) |
|000038b0| 5c 65 76 20 20 5c 73 63 | 68 66 61 6c 73 65 0a 28 |\ev \sc|hfalse.(|
|000038c0| 73 79 6d 62 6f 6c 3f 20 | 3a 6b 65 79 29 20 20 20 |symbol? |:key) |
|000038d0| 20 20 20 20 20 20 20 5c | 65 76 20 20 5c 73 63 68 | \|ev \sch|
|000038e0| 66 61 6c 73 65 0a 5c 65 | 6e 64 7b 73 63 68 65 6d |false.\e|nd{schem|
|000038f0| 65 7d 0a 5c 65 6e 64 7b | 65 6e 74 72 79 7d 0a 0a |e}.\end{|entry}..|
|00003900| 5c 62 65 67 69 6e 7b 65 | 6e 74 72 79 7d 7b 25 0a |\begin{e|ntry}{%.|
|00003910| 5c 70 72 6f 74 6f 7b 73 | 79 6d 62 6f 6c 2d 3e 73 |\proto{s|ymbol->s|
|00003920| 74 72 69 6e 67 7d 7b 20 | 73 79 6d 62 6f 6c 7d 7b |tring}{ |symbol}{|
|00003930| 70 72 6f 63 65 64 75 72 | 65 7d 0a 5c 70 72 6f 74 |procedur|e}.\prot|
|00003940| 6f 7b 73 74 72 69 6e 67 | 2d 3e 73 79 6d 62 6f 6c |o{string|->symbol|
|00003950| 7d 7b 20 73 74 72 69 6e | 67 7d 7b 70 72 6f 63 65 |}{ strin|g}{proce|
|00003960| 64 75 72 65 7d 7d 0a 5c | 73 61 75 74 0a 5c 64 6f |dure}}.\|saut.\do|
|00003970| 63 0a 5c 65 6e 64 7b 65 | 6e 74 72 79 7d 0a 0a 5c |c.\end{e|ntry}..\|
|00003980| 62 65 67 69 6e 7b 65 6e | 74 72 79 7d 7b 25 0a 5c |begin{en|try}{%.\|
|00003990| 70 72 6f 74 6f 7b 67 65 | 6e 73 79 6d 7d 7b 7d 7b |proto{ge|nsym}{}{|
|000039a0| 70 72 6f 63 65 64 75 72 | 65 7d 0a 5c 70 72 6f 74 |procedur|e}.\prot|
|000039b0| 6f 7b 67 65 6e 73 79 6d | 7d 7b 20 70 72 65 66 69 |o{gensym|}{ prefi|
|000039c0| 78 7d 7b 70 72 6f 63 65 | 64 75 72 65 7d 7d 0a 5c |x}{proce|dure}}.\|
|000039d0| 73 61 75 74 0a 5c 69 64 | 65 7b 47 65 6e 73 79 6d |saut.\id|e{Gensym|
|000039e0| 7d 20 63 72 65 61 74 65 | 73 20 61 20 6e 65 77 20 |} create|s a new |
|000039f0| 73 79 6d 62 6f 6c 2e 20 | 54 68 65 20 70 72 69 6e |symbol. |The prin|
|00003a00| 74 20 6e 61 6d 65 20 6f | 66 20 74 68 65 20 67 65 |t name o|f the ge|
|00003a10| 6e 65 72 61 74 65 64 20 | 73 79 6d 62 6f 6c 20 0a |nerated |symbol .|
|00003a20| 63 6f 6e 73 69 73 74 73 | 20 6f 66 20 61 20 70 72 |consists| of a pr|
|00003a30| 65 66 69 78 20 28 77 68 | 69 63 68 20 64 65 66 61 |efix (wh|ich defa|
|00003a40| 75 6c 74 73 20 74 6f 20 | 7b 5c 74 74 20 22 47 22 |ults to |{\tt "G"|
|00003a50| 7d 29 20 66 6f 6c 6c 6f | 77 65 64 20 62 79 20 74 |}) follo|wed by t|
|00003a60| 68 65 20 64 65 63 69 6d | 61 6c 0a 72 65 70 72 65 |he decim|al.repre|
|00003a70| 73 65 6e 74 61 74 69 6f | 6e 20 6f 66 20 61 20 6e |sentatio|n of a n|
|00003a80| 75 6d 62 65 72 2e 20 49 | 66 20 5c 76 61 72 7b 70 |umber. I|f \var{p|
|00003a90| 72 65 66 69 78 7d 20 69 | 73 20 73 70 65 63 69 66 |refix} i|s specif|
|00003aa0| 69 65 64 2c 20 69 74 20 | 6d 75 73 74 20 62 65 20 |ied, it |must be |
|00003ab0| 61 0a 73 74 72 69 6e 67 | 2e 0a 5c 62 65 67 69 6e |a.string|..\begin|
|00003ac0| 7b 73 63 68 65 6d 65 7d | 0a 28 67 65 6e 73 79 6d |{scheme}|.(gensym|
|00003ad0| 29 20 5c 6c 65 76 20 7c | 47 31 30 30 7c 0a 28 67 |) \lev ||G100|.(g|
|00003ae0| 65 6e 73 79 6d 20 22 66 | 6f 6f 2d 22 29 20 5c 6c |ensym "f|oo-") \l|
|00003af0| 65 76 20 66 6f 6f 2d 31 | 30 31 0a 5c 65 6e 64 7b |ev foo-1|01.\end{|
|00003b00| 73 63 68 65 6d 65 7d 0a | 5c 65 6e 64 7b 65 6e 74 |scheme}.|\end{ent|
|00003b10| 72 79 7d 0a 0a 5c 73 75 | 62 73 65 63 74 69 6f 6e |ry}..\su|bsection|
|00003b20| 20 7b 4e 75 6d 62 65 72 | 73 7d 0a 0a 54 68 65 20 | {Number|s}..The |
|00003b30| 6f 6e 6c 79 20 6e 75 6d | 62 65 72 73 20 72 65 63 |only num|bers rec|
|00003b40| 6f 67 6e 69 7a 65 64 20 | 62 79 20 7b 5c 73 74 6b |ognized |by {\stk|
|00003b50| 7d 20 61 72 65 20 69 6e | 74 65 67 65 72 73 20 28 |} are in|tegers (|
|00003b60| 77 69 74 68 20 61 72 62 | 69 74 72 61 72 79 0a 70 |with arb|itrary.p|
|00003b70| 72 65 63 69 73 69 6f 6e | 29 20 61 6e 64 20 72 65 |recision|) and re|
|00003b80| 61 6c 73 20 28 69 6d 70 | 6c 65 6d 65 6e 74 65 64 |als (imp|lemented|
|00003b90| 20 61 73 20 43 20 7b 5c | 74 74 20 64 6f 75 62 6c | as C {\|tt doubl|
|00003ba0| 65 20 66 6c 6f 61 74 7d | 73 29 2e 20 0a 0a 5c 62 |e float}|s). ..\b|
|00003bb0| 65 67 69 6e 7b 65 6e 74 | 72 79 7d 7b 25 0a 5c 70 |egin{ent|ry}{%.\p|
|00003bc0| 72 6f 74 6f 7b 6e 75 6d | 62 65 72 3f 7d 7b 20 6f |roto{num|ber?}{ o|
|00003bd0| 62 6a 7d 7b 70 72 6f 63 | 65 64 75 72 65 7d 7d 0a |bj}{proc|edure}}.|
|00003be0| 5c 73 61 75 74 0a 52 65 | 74 75 72 6e 73 20 7b 5c |\saut.Re|turns {\|
|00003bf0| 73 63 68 74 72 75 65 7d | 20 69 66 20 5c 76 61 72 |schtrue}| if \var|
|00003c00| 7b 6f 62 6a 7d 20 69 73 | 20 61 20 6e 75 6d 62 65 |{obj} is| a numbe|
|00003c10| 72 2c 20 6f 74 68 65 72 | 77 69 73 65 20 72 65 74 |r, other|wise ret|
|00003c20| 75 72 6e 73 20 7b 5c 73 | 63 68 66 61 6c 73 65 7d |urns {\s|chfalse}|
|00003c30| 2e 0a 5c 65 6e 64 7b 65 | 6e 74 72 79 7d 0a 0a 5c |..\end{e|ntry}..\|
|00003c40| 62 65 67 69 6e 7b 65 6e | 74 72 79 7d 7b 25 0a 5c |begin{en|try}{%.\|
|00003c50| 70 72 6f 74 6f 7b 63 6f | 6d 70 6c 65 78 3f 7d 7b |proto{co|mplex?}{|
|00003c60| 20 6f 62 6a 7d 7b 70 72 | 6f 63 65 64 75 72 65 7d | obj}{pr|ocedure}|
|00003c70| 7d 0a 5c 73 61 75 74 0a | 52 65 74 75 72 6e 73 20 |}.\saut.|Returns |
|00003c80| 74 68 65 20 73 61 6d 65 | 20 72 65 73 75 6c 74 20 |the same| result |
|00003c90| 61 73 20 5c 76 61 72 7b | 6e 75 6d 62 65 72 3f 7d |as \var{|number?}|
|00003ca0| 2e 20 20 4e 6f 74 65 20 | 74 68 61 74 20 63 6f 6d |. Note |that com|
|00003cb0| 70 6c 65 78 20 6e 75 6d | 62 65 72 73 0a 61 72 65 |plex num|bers.are|
|00003cc0| 20 6e 6f 74 20 69 6d 70 | 6c 65 6d 65 6e 74 65 64 | not imp|lemented|
|00003cd0| 2e 0a 5c 65 6e 64 7b 65 | 6e 74 72 79 7d 0a 0a 5c |..\end{e|ntry}..\|
|00003ce0| 62 65 67 69 6e 7b 65 6e | 74 72 79 7d 7b 25 0a 5c |begin{en|try}{%.\|
|00003cf0| 70 72 6f 74 6f 7b 72 65 | 61 6c 3f 7d 7b 20 6f 62 |proto{re|al?}{ ob|
|00003d00| 6a 7d 7b 70 72 6f 63 65 | 64 75 72 65 7d 7d 0a 5c |j}{proce|dure}}.\|
|00003d10| 73 61 75 74 0a 52 65 74 | 75 72 6e 73 20 7b 5c 73 |saut.Ret|urns {\s|
|00003d20| 63 68 74 72 75 65 7d 20 | 69 66 20 5c 76 61 72 7b |chtrue} |if \var{|
|00003d30| 6f 62 6a 7d 20 69 73 20 | 61 20 66 6c 6f 61 74 20 |obj} is |a float |
|00003d40| 6e 75 6d 62 65 72 2c 20 | 6f 74 68 65 72 77 69 73 |number, |otherwis|
|00003d50| 65 20 72 65 74 75 72 6e | 73 0a 7b 5c 73 63 68 66 |e return|s.{\schf|
|00003d60| 61 6c 73 65 7d 2e 0a 5c | 65 6e 64 7b 65 6e 74 72 |alse}..\|end{entr|
|00003d70| 79 7d 0a 0a 5c 62 65 67 | 69 6e 7b 65 6e 74 72 79 |y}..\beg|in{entry|
|00003d80| 7d 7b 25 0a 5c 70 72 6f | 74 6f 7b 72 61 74 69 6f |}{%.\pro|to{ratio|
|00003d90| 6e 61 6c 3f 7d 7b 20 6f | 62 6a 7d 7b 70 72 6f 63 |nal?}{ o|bj}{proc|
|00003da0| 65 64 75 72 65 7d 7d 0a | 5c 73 61 75 74 0a 52 65 |edure}}.|\saut.Re|
|00003db0| 74 75 72 6e 73 20 74 68 | 65 20 73 61 6d 65 20 72 |turns th|e same r|
|00003dc0| 65 73 75 6c 74 20 61 73 | 20 5c 76 61 72 7b 6e 75 |esult as| \var{nu|
|00003dd0| 6d 62 65 72 3f 7d 2e 20 | 4e 6f 74 65 20 74 68 61 |mber?}. |Note tha|
|00003de0| 74 20 72 61 74 69 6f 6e | 61 6c 20 6e 75 6d 62 65 |t ration|al numbe|
|00003df0| 72 73 20 61 72 65 20 6e | 6f 74 0a 69 6d 70 6c 65 |rs are n|ot.imple|
|00003e00| 6d 65 6e 74 65 64 2e 0a | 5c 65 6e 64 7b 65 6e 74 |mented..|\end{ent|
|00003e10| 72 79 7d 0a 0a 5c 62 65 | 67 69 6e 7b 65 6e 74 72 |ry}..\be|gin{entr|
|00003e20| 79 7d 7b 25 0a 5c 70 72 | 6f 74 6f 7b 69 6e 74 65 |y}{%.\pr|oto{inte|
|00003e30| 67 65 72 3f 7d 7b 20 6f | 62 6a 7d 7b 70 72 6f 63 |ger?}{ o|bj}{proc|
|00003e40| 65 64 75 72 65 7d 7d 0a | 5c 73 61 75 74 0a 52 65 |edure}}.|\saut.Re|
|00003e50| 74 75 72 6e 73 20 7b 5c | 73 63 68 74 72 75 65 7d |turns {\|schtrue}|
|00003e60| 20 69 66 20 5c 76 61 72 | 7b 6f 62 6a 7d 20 69 73 | if \var|{obj} is|
|00003e70| 20 61 6e 20 69 6e 74 65 | 67 65 72 2c 20 6f 74 68 | an inte|ger, oth|
|00003e80| 65 72 77 69 73 65 20 72 | 65 74 75 72 6e 73 20 7b |erwise r|eturns {|
|00003e90| 5c 73 63 68 66 61 6c 73 | 65 7d 2e 0a 5c 62 65 67 |\schfals|e}..\beg|
|00003ea0| 69 6e 7b 6e 6f 74 65 7d | 0a 20 20 54 68 65 20 7b |in{note}|. The {|
|00003eb0| 5c 73 74 6b 7d 20 69 6e | 74 65 72 70 72 65 74 65 |\stk} in|terprete|
|00003ec0| 72 20 64 69 73 74 69 6e | 67 75 69 73 68 65 73 20 |r distin|guishes |
|00003ed0| 62 65 74 77 65 65 6e 20 | 69 6e 74 65 67 65 72 73 |between |integers|
|00003ee0| 20 77 68 69 63 68 20 66 | 69 74 20 69 6e 20 61 0a | which f|it in a.|
|00003ef0| 20 20 43 20 7b 5c 74 74 | 20 6c 6f 6e 67 20 69 6e | C {\tt| long in|
|00003f00| 74 7d 20 28 6d 69 6e 75 | 73 20 38 20 62 69 74 73 |t} (minu|s 8 bits|
|00003f10| 29 20 61 6e 64 20 69 6e | 74 65 67 65 72 73 20 6f |) and in|tegers o|
|00003f20| 66 20 61 72 62 69 74 72 | 61 72 79 20 6c 65 6e 67 |f arbitr|ary leng|
|00003f30| 74 68 0a 20 20 28 61 6b | 61 20 60 60 62 69 67 6e |th. (ak|a ``bign|
|00003f40| 75 6d 73 27 27 29 2e 20 | 54 68 69 73 20 73 68 6f |ums''). |This sho|
|00003f50| 75 6c 64 20 62 65 20 74 | 72 61 6e 73 70 61 72 65 |uld be t|ranspare|
|00003f60| 6e 74 20 74 6f 20 74 68 | 65 20 75 73 65 72 2c 20 |nt to th|e user, |
|00003f70| 74 68 6f 75 67 68 2e 0a | 25 25 20 73 68 6f 75 6c |though..|%% shoul|
|00003f80| 64 6e 27 74 20 69 74 3f | 20 3a 2d 29 20 20 61 78 |dn't it?| :-) ax|
|00003f90| 65 0a 5c 65 6e 64 7b 6e | 6f 74 65 7d 0a 5c 65 6e |e.\end{n|ote}.\en|
|00003fa0| 64 7b 65 6e 74 72 79 7d | 0a 0a 5c 62 65 67 69 6e |d{entry}|..\begin|
|00003fb0| 7b 65 6e 74 72 79 7d 7b | 25 0a 5c 70 72 6f 74 6f |{entry}{|%.\proto|
|00003fc0| 7b 65 78 61 63 74 3f 7d | 7b 20 5c 76 72 7b 7a 7d |{exact?}|{ \vr{z}|
|00003fd0| 7d 7b 70 72 6f 63 65 64 | 75 72 65 7d 0a 5c 70 72 |}{proced|ure}.\pr|
|00003fe0| 6f 74 6f 7b 69 6e 65 78 | 61 63 74 3f 7d 7b 20 5c |oto{inex|act?}{ \|
|00003ff0| 76 72 7b 7a 7d 7d 7b 70 | 72 6f 63 65 64 75 72 65 |vr{z}}{p|rocedure|
|00004000| 7d 7d 0a 5c 73 61 75 74 | 0a 49 6e 20 74 68 69 73 |}}.\saut|.In this|
|00004010| 20 69 6d 70 6c 65 6d 65 | 6e 74 61 74 69 6f 6e 2c | impleme|ntation,|
|00004020| 20 69 6e 74 65 67 65 72 | 73 20 28 43 20 7b 5c 74 | integer|s (C {\t|
|00004030| 74 20 6c 6f 6e 67 20 69 | 6e 74 7d 20 6f 72 20 60 |t long i|nt} or `|
|00004040| 60 62 69 67 6e 75 6d 73 | 27 27 29 20 61 72 65 20 |`bignums|'') are |
|00004050| 65 78 61 63 74 0a 6e 75 | 6d 62 65 72 73 20 61 6e |exact.nu|mbers an|
|00004060| 64 20 66 6c 6f 61 74 73 | 20 61 72 65 20 69 6e 65 |d floats| are ine|
|00004070| 78 61 63 74 2e 0a 5c 65 | 6e 64 7b 65 6e 74 72 79 |xact..\e|nd{entry|
|00004080| 7d 0a 0a 5c 62 65 67 69 | 6e 7b 65 6e 74 72 79 7d |}..\begi|n{entry}|
|00004090| 7b 25 0a 5c 70 72 6f 74 | 6f 7b 3d 7d 7b 20 5c 76 |{%.\prot|o{=}{ \v|
|000040a0| 72 69 7b 7a 7d 20 5c 76 | 72 69 69 7b 7a 7d 20 5c |ri{z} \v|rii{z} \|
|000040b0| 76 72 69 69 69 7b 7a 7d | 20 5c 64 6f 74 73 66 6f |vriii{z}| \dotsfo|
|000040c0| 6f 7d 7b 70 72 6f 63 65 | 64 75 72 65 7d 0a 5c 70 |o}{proce|dure}.\p|
|000040d0| 72 6f 74 6f 7b 3c 7d 7b | 20 5c 76 72 69 7b 78 7d |roto{<}{| \vri{x}|
|000040e0| 20 5c 76 72 69 69 7b 78 | 7d 20 5c 76 72 69 69 69 | \vrii{x|} \vriii|
|000040f0| 7b 78 7d 20 5c 64 6f 74 | 73 66 6f 6f 7d 7b 70 72 |{x} \dot|sfoo}{pr|
|00004100| 6f 63 65 64 75 72 65 7d | 0a 5c 70 72 6f 74 6f 7b |ocedure}|.\proto{|
|00004110| 3e 7d 7b 20 5c 76 72 69 | 7b 78 7d 20 5c 76 72 69 |>}{ \vri|{x} \vri|
|00004120| 69 7b 78 7d 20 5c 76 72 | 69 69 69 7b 78 7d 20 5c |i{x} \vr|iii{x} \|
|00004130| 64 6f 74 73 66 6f 6f 7d | 7b 70 72 6f 63 65 64 75 |dotsfoo}|{procedu|
|00004140| 72 65 7d 0a 5c 70 72 6f | 74 6f 7b 3c 3d 7d 7b 20 |re}.\pro|to{<=}{ |
|00004150| 5c 76 72 69 7b 78 7d 20 | 5c 76 72 69 69 7b 78 7d |\vri{x} |\vrii{x}|
|00004160| 20 5c 76 72 69 69 69 7b | 78 7d 20 5c 64 6f 74 73 | \vriii{|x} \dots|
|00004170| 66 6f 6f 7d 7b 70 72 6f | 63 65 64 75 72 65 7d 0a |foo}{pro|cedure}.|
|00004180| 5c 70 72 6f 74 6f 7b 3e | 3d 7d 7b 20 5c 76 72 69 |\proto{>|=}{ \vri|
|00004190| 7b 78 7d 20 5c 76 72 69 | 69 7b 78 7d 20 5c 76 72 |{x} \vri|i{x} \vr|
|000041a0| 69 69 69 7b 78 7d 20 5c | 64 6f 74 73 66 6f 6f 7d |iii{x} \|dotsfoo}|
|000041b0| 7b 70 72 6f 63 65 64 75 | 72 65 7d 0a 5c 70 72 6f |{procedu|re}.\pro|
|000041c0| 74 6f 7b 7a 65 72 6f 3f | 7d 20 7b 20 7a 7d 7b 70 |to{zero?|} { z}{p|
|000041d0| 72 6f 63 65 64 75 72 65 | 7d 0a 5c 70 72 6f 74 6f |rocedure|}.\proto|
|000041e0| 7b 70 6f 73 69 74 69 76 | 65 3f 7d 20 7b 20 7a 7d |{positiv|e?} { z}|
|000041f0| 7b 70 72 6f 63 65 64 75 | 72 65 7d 0a 5c 70 72 6f |{procedu|re}.\pro|
|00004200| 74 6f 7b 6e 65 67 61 74 | 69 76 65 3f 7d 20 7b 20 |to{negat|ive?} { |
|00004210| 7a 7d 7b 70 72 6f 63 65 | 64 75 72 65 7d 0a 5c 70 |z}{proce|dure}.\p|
|00004220| 72 6f 74 6f 7b 6f 64 64 | 3f 7d 20 7b 20 7a 7d 7b |roto{odd|?} { z}{|
|00004230| 70 72 6f 63 65 64 75 72 | 65 7d 0a 5c 70 72 6f 74 |procedur|e}.\prot|
|00004240| 6f 7b 65 76 65 6e 3f 7d | 20 7b 20 7a 7d 7b 70 72 |o{even?}| { z}{pr|
|00004250| 6f 63 65 64 75 72 65 7d | 0a 5c 70 72 6f 74 6f 7b |ocedure}|.\proto{|
|00004260| 6d 61 78 7d 7b 20 5c 76 | 72 69 7b 78 7d 20 5c 76 |max}{ \v|ri{x} \v|
|00004270| 72 69 69 7b 78 7d 20 5c | 64 6f 74 73 66 6f 6f 7d |rii{x} \|dotsfoo}|
|00004280| 7b 70 72 6f 63 65 64 75 | 72 65 7d 0a 5c 70 72 6f |{procedu|re}.\pro|
|00004290| 74 6f 7b 6d 69 6e 7d 7b | 20 5c 76 72 69 7b 78 7d |to{min}{| \vri{x}|
|000042a0| 20 5c 76 72 69 69 7b 78 | 7d 20 5c 64 6f 74 73 66 | \vrii{x|} \dotsf|
|000042b0| 6f 6f 7d 7b 70 72 6f 63 | 65 64 75 72 65 7d 0a 5c |oo}{proc|edure}.\|
|000042c0| 70 72 6f 74 6f 7b 2b 7d | 7b 20 5c 76 72 69 7b 7a |proto{+}|{ \vri{z|
|000042d0| 7d 20 5c 64 6f 74 73 66 | 6f 6f 7d 7b 70 72 6f 63 |} \dotsf|oo}{proc|
|000042e0| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 2a 7d |edure}.\|proto{*}|
|000042f0| 7b 20 5c 76 72 69 7b 7a | 7d 20 5c 64 6f 74 73 66 |{ \vri{z|} \dotsf|
|00004300| 6f 6f 7d 7b 70 72 6f 63 | 65 64 75 72 65 7d 0a 5c |oo}{proc|edure}.\|
|00004310| 70 72 6f 74 6f 7b 2d 7d | 7b 20 5c 76 72 69 7b 7a |proto{-}|{ \vri{z|
|00004320| 7d 20 5c 76 72 69 69 7b | 7a 7d 7d 7b 70 72 6f 63 |} \vrii{|z}}{proc|
|00004330| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 2d 7d |edure}.\|proto{-}|
|00004340| 7b 20 5c 76 72 7b 7a 7d | 7d 7b 70 72 6f 63 65 64 |{ \vr{z}|}{proced|
|00004350| 75 72 65 7d 0a 5c 70 72 | 6f 74 6f 7b 2d 7d 7b 20 |ure}.\pr|oto{-}{ |
|00004360| 5c 76 72 69 7b 7a 7d 20 | 5c 76 72 69 69 7b 7a 7d |\vri{z} |\vrii{z}|
|00004370| 20 5c 64 6f 74 73 66 6f | 6f 7d 7b 70 72 6f 63 65 | \dotsfo|o}{proce|
|00004380| 64 75 72 65 7d 0a 5c 70 | 72 6f 74 6f 7b 2f 7d 7b |dure}.\p|roto{/}{|
|00004390| 20 5c 76 72 69 7b 7a 7d | 20 5c 76 72 69 69 7b 7a | \vri{z}| \vrii{z|
|000043a0| 7d 7d 7b 70 72 6f 63 65 | 64 75 72 65 7d 0a 5c 70 |}}{proce|dure}.\p|
|000043b0| 72 6f 74 6f 7b 2f 7d 7b | 20 5c 76 72 7b 7a 7d 7d |roto{/}{| \vr{z}}|
|000043c0| 7b 70 72 6f 63 65 64 75 | 72 65 7d 0a 5c 70 72 6f |{procedu|re}.\pro|
|000043d0| 74 6f 7b 2f 7d 7b 20 5c | 76 72 69 7b 7a 7d 20 5c |to{/}{ \|vri{z} \|
|000043e0| 76 72 69 69 7b 7a 7d 20 | 5c 64 6f 74 73 66 6f 6f |vrii{z} |\dotsfoo|
|000043f0| 7d 7b 70 72 6f 63 65 64 | 75 72 65 7d 0a 5c 70 72 |}{proced|ure}.\pr|
|00004400| 6f 74 6f 7b 61 62 73 7d | 7b 20 78 7d 7b 70 72 6f |oto{abs}|{ x}{pro|
|00004410| 63 65 64 75 72 65 7d 0a | 5c 70 72 6f 74 6f 7b 71 |cedure}.|\proto{q|
|00004420| 75 6f 74 69 65 6e 74 7d | 7b 20 5c 76 72 69 7b 6e |uotient}|{ \vri{n|
|00004430| 7d 20 5c 76 72 69 69 7b | 6e 7d 7d 7b 70 72 6f 63 |} \vrii{|n}}{proc|
|00004440| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 72 65 |edure}.\|proto{re|
|00004450| 6d 61 69 6e 64 65 72 7d | 7b 20 5c 76 72 69 7b 6e |mainder}|{ \vri{n|
|00004460| 7d 20 5c 76 72 69 69 7b | 6e 7d 7d 7b 70 72 6f 63 |} \vrii{|n}}{proc|
|00004470| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 6d 6f |edure}.\|proto{mo|
|00004480| 64 75 6c 6f 7d 7b 20 5c | 76 72 69 7b 6e 7d 20 5c |dulo}{ \|vri{n} \|
|00004490| 76 72 69 69 7b 6e 7d 7d | 7b 70 72 6f 63 65 64 75 |vrii{n}}|{procedu|
|000044a0| 72 65 7d 0a 5c 70 72 6f | 74 6f 7b 67 63 64 7d 7b |re}.\pro|to{gcd}{|
|000044b0| 20 5c 76 72 69 7b 6e 7d | 20 5c 64 6f 74 73 66 6f | \vri{n}| \dotsfo|
|000044c0| 6f 7d 7b 70 72 6f 63 65 | 64 75 72 65 7d 0a 5c 70 |o}{proce|dure}.\p|
|000044d0| 72 6f 74 6f 7b 6c 63 6d | 7d 7b 20 5c 76 72 69 7b |roto{lcm|}{ \vri{|
|000044e0| 6e 7d 20 5c 64 6f 74 73 | 66 6f 6f 7d 7b 70 72 6f |n} \dots|foo}{pro|
|000044f0| 63 65 64 75 72 65 7d 7d | 0a 5c 73 61 75 74 0a 5c |cedure}}|.\saut.\|
|00004500| 64 6f 63 0a 5c 65 6e 64 | 7b 65 6e 74 72 79 7d 0a |doc.\end|{entry}.|
|00004510| 0a 5c 62 65 67 69 6e 7b | 65 6e 74 72 79 7d 7b 25 |.\begin{|entry}{%|
|00004520| 0a 5c 70 72 6f 74 6f 7b | 6e 75 6d 65 72 61 74 6f |.\proto{|numerato|
|00004530| 72 7d 7b 20 5c 76 72 7b | 71 7d 7d 7b 70 72 6f 63 |r}{ \vr{|q}}{proc|
|00004540| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 64 65 |edure}.\|proto{de|
|00004550| 6e 6f 6d 69 6e 61 74 6f | 72 7d 7b 20 5c 76 72 7b |nominato|r}{ \vr{|
|00004560| 71 7d 7d 7b 70 72 6f 63 | 65 64 75 72 65 7d 7d 0a |q}}{proc|edure}}.|
|00004570| 5c 73 61 75 74 0a 4e 6f | 74 20 69 6d 70 6c 65 6d |\saut.No|t implem|
|00004580| 65 6e 74 65 64 2e 0a 5c | 65 6e 64 7b 65 6e 74 72 |ented..\|end{entr|
|00004590| 79 7d 0a 0a 5c 62 65 67 | 69 6e 7b 65 6e 74 72 79 |y}..\beg|in{entry|
|000045a0| 7d 7b 25 0a 5c 70 72 6f | 74 6f 7b 66 6c 6f 6f 72 |}{%.\pro|to{floor|
|000045b0| 7d 7b 20 78 7d 7b 70 72 | 6f 63 65 64 75 72 65 7d |}{ x}{pr|ocedure}|
|000045c0| 0a 5c 70 72 6f 74 6f 7b | 63 65 69 6c 69 6e 67 7d |.\proto{|ceiling}|
|000045d0| 7b 20 78 7d 7b 70 72 6f | 63 65 64 75 72 65 7d 0a |{ x}{pro|cedure}.|
|000045e0| 5c 70 72 6f 74 6f 7b 74 | 72 75 6e 63 61 74 65 7d |\proto{t|runcate}|
|000045f0| 7b 20 78 7d 7b 70 72 6f | 63 65 64 75 72 65 7d 0a |{ x}{pro|cedure}.|
|00004600| 5c 70 72 6f 74 6f 7b 72 | 6f 75 6e 64 7d 7b 20 78 |\proto{r|ound}{ x|
|00004610| 7d 7b 70 72 6f 63 65 64 | 75 72 65 7d 7d 0a 5c 73 |}{proced|ure}}.\s|
|00004620| 61 75 74 0a 5c 64 6f 63 | 0a 5c 65 6e 64 7b 65 6e |aut.\doc|.\end{en|
|00004630| 74 72 79 7d 0a 0a 5c 62 | 65 67 69 6e 7b 65 6e 74 |try}..\b|egin{ent|
|00004640| 72 79 7d 7b 25 0a 5c 70 | 72 6f 74 6f 7b 72 61 74 |ry}{%.\p|roto{rat|
|00004650| 69 6f 6e 61 6c 69 7a 65 | 7d 7b 20 78 20 79 7d 7b |ionalize|}{ x y}{|
|00004660| 70 72 6f 63 65 64 75 72 | 65 7d 7d 0a 5c 73 61 75 |procedur|e}}.\sau|
|00004670| 74 0a 6e 6f 74 20 79 65 | 74 20 69 6d 70 6c 65 6d |t.not ye|t implem|
|00004680| 65 6e 74 65 64 2e 0a 5c | 65 6e 64 7b 65 6e 74 72 |ented..\|end{entr|
|00004690| 79 7d 0a 0a 5c 62 65 67 | 69 6e 7b 65 6e 74 72 79 |y}..\beg|in{entry|
|000046a0| 7d 7b 25 0a 5c 70 72 6f | 74 6f 7b 65 78 70 7d 7b |}{%.\pro|to{exp}{|
|000046b0| 20 5c 76 72 7b 7a 7d 7d | 7b 70 72 6f 63 65 64 75 | \vr{z}}|{procedu|
|000046c0| 72 65 7d 0a 5c 70 72 6f | 74 6f 7b 6c 6f 67 7d 7b |re}.\pro|to{log}{|
|000046d0| 20 5c 76 72 7b 7a 7d 7d | 7b 70 72 6f 63 65 64 75 | \vr{z}}|{procedu|
|000046e0| 72 65 7d 0a 5c 70 72 6f | 74 6f 7b 73 69 6e 7d 7b |re}.\pro|to{sin}{|
|000046f0| 20 5c 76 72 7b 7a 7d 7d | 7b 70 72 6f 63 65 64 75 | \vr{z}}|{procedu|
|00004700| 72 65 7d 0a 5c 70 72 6f | 74 6f 7b 63 6f 73 7d 7b |re}.\pro|to{cos}{|
|00004710| 20 5c 76 72 7b 7a 7d 7d | 7b 70 72 6f 63 65 64 75 | \vr{z}}|{procedu|
|00004720| 72 65 7d 0a 5c 70 72 6f | 74 6f 7b 74 61 6e 7d 7b |re}.\pro|to{tan}{|
|00004730| 20 5c 76 72 7b 7a 7d 7d | 7b 70 72 6f 63 65 64 75 | \vr{z}}|{procedu|
|00004740| 72 65 7d 0a 5c 70 72 6f | 74 6f 7b 61 73 69 6e 7d |re}.\pro|to{asin}|
|00004750| 7b 20 5c 76 72 7b 7a 7d | 7d 7b 70 72 6f 63 65 64 |{ \vr{z}|}{proced|
|00004760| 75 72 65 7d 0a 5c 70 72 | 6f 74 6f 7b 61 63 6f 73 |ure}.\pr|oto{acos|
|00004770| 7d 7b 20 5c 76 72 7b 7a | 7d 7d 7b 70 72 6f 63 65 |}{ \vr{z|}}{proce|
|00004780| 64 75 72 65 7d 0a 5c 70 | 72 6f 74 6f 7b 61 74 61 |dure}.\p|roto{ata|
|00004790| 6e 7d 7b 20 5c 76 72 7b | 7a 7d 7d 7b 70 72 6f 63 |n}{ \vr{|z}}{proc|
|000047a0| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 61 74 |edure}.\|proto{at|
|000047b0| 61 6e 7d 7b 20 5c 76 72 | 7b 79 7d 20 5c 76 72 7b |an}{ \vr|{y} \vr{|
|000047c0| 78 7d 7d 7b 70 72 6f 63 | 65 64 75 72 65 7d 0a 5c |x}}{proc|edure}.\|
|000047d0| 70 72 6f 74 6f 7b 73 71 | 72 74 7d 7b 20 5c 76 72 |proto{sq|rt}{ \vr|
|000047e0| 7b 7a 7d 7d 7b 70 72 6f | 63 65 64 75 72 65 7d 0a |{z}}{pro|cedure}.|
|000047f0| 5c 70 72 6f 74 6f 7b 65 | 78 70 74 7d 7b 20 5c 76 |\proto{e|xpt}{ \v|
|00004800| 72 69 7b 7a 7d 20 5c 76 | 72 69 69 7b 7a 7d 7d 7b |ri{z} \v|rii{z}}{|
|00004810| 70 72 6f 63 65 64 75 72 | 65 7d 7d 0a 5c 73 61 75 |procedur|e}}.\sau|
|00004820| 74 0a 5c 64 6f 63 0a 5c | 65 6e 64 7b 65 6e 74 72 |t.\doc.\|end{entr|
|00004830| 79 7d 0a 0a 5c 62 65 67 | 69 6e 7b 65 6e 74 72 79 |y}..\beg|in{entry|
|00004840| 7d 7b 0a 5c 70 72 6f 74 | 6f 7b 6d 61 6b 65 2d 72 |}{.\prot|o{make-r|
|00004850| 65 63 74 61 6e 67 75 6c | 61 72 7d 7b 20 5c 76 72 |ectangul|ar}{ \vr|
|00004860| 69 7b 78 7d 20 5c 76 72 | 69 69 7b 78 7d 7d 7b 70 |i{x} \vr|ii{x}}{p|
|00004870| 72 6f 63 65 64 75 72 65 | 7d 0a 5c 70 72 6f 74 6f |rocedure|}.\proto|
|00004880| 7b 6d 61 6b 65 2d 70 6f | 6c 61 72 7d 7b 20 5c 76 |{make-po|lar}{ \v|
|00004890| 72 69 7b 78 7d 20 5c 76 | 72 69 69 7b 78 7d 7d 7b |ri{x} \v|rii{x}}{|
|000048a0| 70 72 6f 63 65 64 75 72 | 65 7d 0a 5c 70 72 6f 74 |procedur|e}.\prot|
|000048b0| 6f 7b 72 65 61 6c 2d 70 | 61 72 74 7d 7b 20 5c 76 |o{real-p|art}{ \v|
|000048c0| 72 7b 7a 7d 7d 7b 70 72 | 6f 63 65 64 75 72 65 7d |r{z}}{pr|ocedure}|
|000048d0| 0a 5c 70 72 6f 74 6f 7b | 69 6d 61 67 2d 70 61 72 |.\proto{|imag-par|
|000048e0| 74 7d 7b 20 5c 76 72 7b | 7a 7d 7d 7b 70 72 6f 63 |t}{ \vr{|z}}{proc|
|000048f0| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 6d 61 |edure}.\|proto{ma|
|00004900| 67 6e 69 74 75 64 65 7d | 7b 20 5c 76 72 7b 7a 7d |gnitude}|{ \vr{z}|
|00004910| 7d 7b 70 72 6f 63 65 64 | 75 72 65 7d 0a 5c 70 72 |}{proced|ure}.\pr|
|00004920| 6f 74 6f 7b 61 6e 67 6c | 65 7d 7b 20 5c 76 72 7b |oto{angl|e}{ \vr{|
|00004930| 7a 7d 7d 7b 70 72 6f 63 | 65 64 75 72 65 7d 7d 0a |z}}{proc|edure}}.|
|00004940| 5c 73 61 75 74 0a 54 68 | 65 73 65 20 70 72 6f 63 |\saut.Th|ese proc|
|00004950| 65 64 75 72 65 73 20 61 | 72 65 20 6e 6f 74 20 69 |edures a|re not i|
|00004960| 6d 70 6c 65 6d 65 6e 74 | 65 64 20 73 69 6e 63 65 |mplement|ed since|
|00004970| 20 63 6f 6d 70 6c 65 78 | 20 6e 75 6d 62 65 72 73 | complex| numbers|
|00004980| 20 61 72 65 20 6e 6f 74 | 20 64 65 66 69 6e 65 64 | are not| defined|
|00004990| 2e 0a 5c 65 6e 64 7b 65 | 6e 74 72 79 7d 0a 0a 5c |..\end{e|ntry}..\|
|000049a0| 62 65 67 69 6e 7b 65 6e | 74 72 79 7d 7b 25 0a 5c |begin{en|try}{%.\|
|000049b0| 70 72 6f 74 6f 7b 65 78 | 61 63 74 2d 3e 69 6e 65 |proto{ex|act->ine|
|000049c0| 78 61 63 74 7d 7b 20 5c | 76 72 7b 7a 7d 7d 7b 70 |xact}{ \|vr{z}}{p|
|000049d0| 72 6f 63 65 64 75 72 65 | 7d 0a 5c 70 72 6f 74 6f |rocedure|}.\proto|
|000049e0| 7b 69 6e 65 78 61 63 74 | 2d 3e 65 78 61 63 74 7d |{inexact|->exact}|
|000049f0| 7b 20 5c 76 72 7b 7a 7d | 7d 7b 70 72 6f 63 65 64 |{ \vr{z}|}{proced|
|00004a00| 75 72 65 7d 0a 5c 70 72 | 6f 74 6f 7b 6e 75 6d 62 |ure}.\pr|oto{numb|
|00004a10| 65 72 2d 3e 73 74 72 69 | 6e 67 7d 7b 20 6e 75 6d |er->stri|ng}{ num|
|00004a20| 62 65 72 7d 7b 70 72 6f | 63 65 64 75 72 65 7d 0a |ber}{pro|cedure}.|
|00004a30| 5c 70 72 6f 74 6f 7b 6e | 75 6d 62 65 72 2d 3e 73 |\proto{n|umber->s|
|00004a40| 74 72 69 6e 67 7d 7b 20 | 6e 75 6d 62 65 72 20 72 |tring}{ |number r|
|00004a50| 61 64 69 78 7d 7b 70 72 | 6f 63 65 64 75 72 65 7d |adix}{pr|ocedure}|
|00004a60| 0a 5c 70 72 6f 74 6f 7b | 73 74 72 69 6e 67 2d 3e |.\proto{|string->|
|00004a70| 6e 75 6d 62 65 72 7d 7b | 20 73 74 72 69 6e 67 7d |number}{| string}|
|00004a80| 7b 70 72 6f 63 65 64 75 | 72 65 7d 0a 5c 70 72 6f |{procedu|re}.\pro|
|00004a90| 74 6f 7b 73 74 72 69 6e | 67 2d 3e 6e 75 6d 62 65 |to{strin|g->numbe|
|00004aa0| 72 7d 7b 20 73 74 72 69 | 6e 67 20 72 61 64 69 78 |r}{ stri|ng radix|
|00004ab0| 7d 7b 70 72 6f 63 65 64 | 75 72 65 7d 7d 0a 5c 73 |}{proced|ure}}.\s|
|00004ac0| 61 75 74 0a 5c 64 6f 63 | 0a 5c 65 6e 64 7b 65 6e |aut.\doc|.\end{en|
|00004ad0| 74 72 79 7d 0a 0a 25 25 | 25 25 25 25 25 25 25 25 |try}..%%|%%%%%%%%|
|00004ae0| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00004af0| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00004b00| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00004b10| 25 25 25 25 25 25 25 25 | 25 25 25 25 25 25 25 25 |%%%%%%%%|%%%%%%%%|
|00004b20| 25 25 25 25 0a 5c 73 75 | 62 73 65 63 74 69 6f 6e |%%%%.\su|bsection|
|00004b30| 7b 43 68 61 72 61 63 74 | 65 72 73 7d 0a 0a 5c 6d |{Charact|ers}..\m|
|00004b40| 61 69 6e 69 6e 64 65 78 | 7b 63 68 61 72 61 63 74 |ainindex|{charact|
|00004b50| 65 72 73 7d 0a 54 61 62 | 6c 65 20 31 20 67 69 76 |ers}.Tab|le 1 giv|
|00004b60| 65 73 20 74 68 65 20 6c | 69 73 74 20 6f 66 20 61 |es the l|ist of a|
|00004b70| 6c 6c 6f 77 65 64 20 63 | 68 61 72 61 63 74 65 72 |llowed c|haracter|
|00004b80| 20 6e 61 6d 65 73 20 74 | 6f 67 65 74 68 65 72 20 | names t|ogether |
|00004b90| 77 69 74 68 20 74 68 65 | 69 72 20 41 53 43 49 49 |with the|ir ASCII|
|00004ba0| 0a 65 71 75 69 76 61 6c | 65 6e 74 20 65 78 70 72 |.equival|ent expr|
|00004bb0| 65 73 73 65 64 20 69 6e | 20 6f 63 74 61 6c 2e 0a |essed in| octal..|
|00004bc0| 0a 5c 62 65 67 69 6e 7b | 74 61 62 6c 65 7d 5b 74 |.\begin{|table}[t|
|00004bd0| 5d 0a 7b 5c 73 6d 61 6c | 6c 0a 5c 62 65 67 69 6e |].{\smal|l.\begin|
|00004be0| 7b 63 65 6e 74 65 72 7d | 0a 25 20 5c 62 65 67 69 |{center}|.% \begi|
|00004bf0| 6e 7b 74 61 62 75 6c 61 | 72 7d 7b 7c 63 7c 63 7c |n{tabula|r}{|c|c||
|00004c00| 63 7c 7d 20 5c 68 6c 69 | 6e 65 0a 25 20 20 20 7b |c|} \hli|ne.% {|
|00004c10| 5c 65 6d 20 6e 61 6d 65 | 7d 26 7b 5c 65 6d 20 76 |\em name|}&{\em v|
|00004c20| 61 6c 75 65 7d 26 7b 5c | 65 6d 20 61 6c 74 65 72 |alue}&{\|em alter|
|00004c30| 6e 61 74 65 20 6e 61 6d | 65 7d 20 5c 5c 0a 25 20 |nate nam|e} \\.% |
|00004c40| 5c 68 6c 69 6e 65 0a 25 | 20 20 20 6e 75 6c 20 20 |\hline.%| nul |
|00004c50| 20 20 20 20 20 20 26 30 | 30 30 20 20 20 20 20 26 | &0|00 &|
|00004c60| 20 6e 75 6c 6c 5c 5c 0a | 25 20 20 20 73 6f 68 20 | null\\.|% soh |
|00004c70| 20 20 20 20 20 20 20 26 | 30 30 31 26 5c 5c 0a 25 | &|001&\\.%|
|00004c80| 20 20 20 73 74 78 20 20 | 20 20 20 20 20 20 26 30 | stx | &0|
|00004c90| 30 32 26 5c 5c 0a 25 20 | 20 20 65 74 78 20 20 20 |02&\\.% | etx |
|00004ca0| 20 20 20 20 20 26 30 30 | 33 26 5c 5c 0a 25 20 20 | &00|3&\\.% |
|00004cb0| 20 65 6f 74 20 20 20 20 | 20 20 20 20 26 30 30 34 | eot | &004|
|00004cc0| 26 5c 5c 0a 25 20 20 20 | 65 6e 71 20 20 20 20 20 |&\\.% |enq |
|00004cd0| 20 20 20 26 30 30 35 26 | 5c 5c 0a 25 20 20 20 61 | &005&|\\.% a|
|00004ce0| 63 6b 20 20 20 20 20 20 | 20 20 26 30 30 36 26 5c |ck | &006&\|
|00004cf0| 5c 0a 25 20 20 20 62 65 | 6c 20 20 20 20 20 20 20 |\.% be|l |
|00004d00| 20 26 30 30 37 20 20 20 | 20 20 26 20 62 65 6c 6c | &007 | & bell|
|00004d10| 5c 5c 5b 32 6d 6d 5d 0a | 25 20 20 20 62 73 20 20 |\\[2mm].|% bs |
|00004d20| 20 20 20 20 20 20 20 26 | 30 31 30 20 20 20 20 20 | &|010 |
|00004d30| 26 20 62 61 63 6b 73 70 | 61 63 65 5c 5c 0a 25 20 |& backsp|ace\\.% |
|00004d40| 20 20 68 74 20 20 20 20 | 20 20 20 20 20 26 30 31 | ht | &01|
|00004d50| 31 26 5c 5c 0a 25 20 20 | 20 74 61 62 20 20 20 20 |1&\\.% | tab |
|00004d60| 20 20 20 20 26 30 31 31 | 26 5c 5c 0a 25 20 20 20 | &011|&\\.% |
|00004d70| 6e 6c 20 20 20 20 20 20 | 20 20 20 26 30 31 32 20 |nl | &012 |
|00004d80| 20 20 20 20 26 20 6e 65 | 77 6c 69 6e 65 5c 5c 0a | & ne|wline\\.|
|00004d90| 25 20 20 20 76 74 20 20 | 20 20 20 20 20 20 20 26 |% vt | &|
|00004da0| 30 31 33 26 5c 5c 0a 25 | 20 20 20 6e 70 20 20 20 |013&\\.%| np |
|00004db0| 20 20 20 20 20 20 26 30 | 31 34 20 20 20 20 20 26 | &0|14 &|
|00004dc0| 20 70 61 67 65 5c 5c 0a | 25 20 20 20 63 72 20 20 | page\\.|% cr |
|00004dd0| 20 20 20 20 20 20 20 26 | 30 31 35 20 20 20 20 20 | &|015 |
|00004de0| 26 20 72 65 74 75 72 6e | 5c 5c 0a 25 20 20 20 73 |& return|\\.% s|
|00004df0| 6f 20 20 20 20 20 20 20 | 20 20 26 30 31 36 26 5c |o | &016&\|
|00004e00| 5c 0a 25 20 20 20 73 69 | 20 20 20 20 20 20 20 20 |\.% si| |
|00004e10| 20 26 30 31 37 26 5c 5c | 5b 32 6d 6d 5d 0a 25 20 | &017&\\|[2mm].% |
|00004e20| 20 20 64 6c 65 20 20 20 | 20 20 20 20 20 26 30 32 | dle | &02|
|00004e30| 30 26 5c 5c 0a 25 20 20 | 20 64 63 31 20 20 20 20 |0&\\.% | dc1 |
|00004e40| 20 20 20 20 26 30 32 31 | 26 5c 5c 0a 25 20 20 20 | &021|&\\.% |
|00004e50| 64 63 32 20 20 20 20 20 | 20 20 20 26 30 32 32 26 |dc2 | &022&|
|00004e60| 5c 5c 0a 25 20 20 20 64 | 63 33 20 20 20 20 20 20 |\\.% d|c3 |
|00004e70| 20 20 26 30 32 33 26 5c | 5c 0a 25 20 20 20 64 63 | &023&\|\.% dc|
|00004e80| 34 20 20 20 20 20 20 20 | 20 26 30 32 34 26 5c 5c |4 | &024&\\|
|00004e90| 0a 25 20 20 20 6e 61 6b | 20 20 20 20 20 20 20 20 |.% nak| |
|00004ea0| 26 30 32 35 26 5c 5c 0a | 25 20 20 20 73 79 6e 20 |&025&\\.|% syn |
|00004eb0| 20 20 20 20 20 20 20 26 | 30 32 36 26 5c 5c 0a 25 | &|026&\\.%|
|00004ec0| 20 20 20 65 74 62 20 20 | 20 20 20 20 20 20 26 30 | etb | &0|
|00004ed0| 32 37 26 5c 5c 5b 32 6d | 6d 5d 0a 25 20 20 20 63 |27&\\[2m|m].% c|
|00004ee0| 61 6e 20 20 20 20 20 20 | 20 20 26 30 33 30 26 5c |an | &030&\|
|00004ef0| 5c 0a 25 20 20 20 65 6d | 20 20 20 20 20 20 20 20 |\.% em| |
|00004f00| 20 26 30 33 31 26 5c 5c | 0a 25 20 20 20 73 75 62 | &031&\\|.% sub|
|00004f10| 20 20 20 20 20 20 20 20 | 26 30 33 32 26 5c 5c 0a | |&032&\\.|
|00004f20| 25 20 20 20 65 73 63 20 | 20 20 20 20 20 20 20 26 |% esc | &|
|00004f30| 30 33 33 20 20 20 20 20 | 26 20 65 73 63 61 70 65 |033 |& escape|
|00004f40| 5c 5c 0a 25 20 20 20 66 | 73 20 20 20 20 20 20 20 |\\.% f|s |
|00004f50| 20 20 26 30 33 34 26 5c | 5c 0a 25 20 20 20 67 73 | &034&\|\.% gs|
|00004f60| 20 20 20 20 20 20 20 20 | 20 26 30 33 35 26 5c 5c | | &035&\\|
|00004f70| 0a 25 20 20 20 72 73 20 | 20 20 20 20 20 20 20 20 |.% rs | |
|00004f80| 26 30 33 36 26 5c 5c 0a | 25 20 20 20 75 73 20 20 |&036&\\.|% us |
|00004f90| 20 20 20 20 20 20 20 26 | 30 33 37 26 5c 5c 5b 32 | &|037&\\[2|
|00004fa0| 6d 6d 5d 0a 25 20 20 20 | 73 70 20 20 20 20 20 20 |mm].% |sp |
|00004fb0| 20 26 30 34 30 20 20 20 | 20 20 20 20 26 20 73 70 | &040 | & sp|
|00004fc0| 61 63 65 5c 5c 5b 32 6d | 6d 5d 0a 25 20 20 20 64 |ace\\[2m|m].% d|
|00004fd0| 65 6c 20 20 20 20 20 20 | 26 31 37 37 20 20 20 20 |el |&177 |
|00004fe0| 20 20 20 26 20 64 65 6c | 65 74 65 5c 5c 0a 5c 62 | & del|ete\\.\b|
|00004ff0| 65 67 69 6e 7b 74 61 62 | 75 6c 61 72 7d 7b 7c 63 |egin{tab|ular}{|c|
|00005000| 7c 63 7c 63 7c 7c 63 7c | 63 7c 63 7c 7d 20 5c 68 ||c|c||c||c|c|} \h|
|00005010| 6c 69 6e 65 0a 7b 5c 65 | 6d 20 6e 61 6d 65 7d 26 |line.{\e|m name}&|
|00005020| 7b 5c 65 6d 20 76 61 6c | 75 65 7d 26 7b 5c 65 6d |{\em val|ue}&{\em|
|00005030| 20 61 6c 74 65 72 6e 61 | 74 65 20 6e 61 6d 65 7d | alterna|te name}|
|00005040| 26 7b 5c 65 6d 20 6e 61 | 6d 65 7d 26 7b 5c 65 6d |&{\em na|me}&{\em|
|00005050| 20 76 61 6c 75 65 7d 26 | 7b 5c 65 6d 20 61 6c 74 | value}&|{\em alt|
|00005060| 65 72 6e 61 74 65 20 6e | 61 6d 65 7d 20 5c 5c 0a |ernate n|ame} \\.|
|00005070| 5c 68 6c 69 6e 65 0a 20 | 20 6e 75 6c 20 20 20 20 |\hline. | nul |
|00005080| 20 20 20 20 26 30 30 30 | 20 20 20 20 20 20 20 26 | &000| &|
|00005090| 20 6e 75 6c 6c 20 20 26 | 20 20 62 73 20 20 20 20 | null &| bs |
|000050a0| 20 20 20 20 20 26 30 31 | 30 20 20 20 20 20 20 26 | &01|0 &|
|000050b0| 20 62 61 63 6b 73 70 61 | 63 65 5c 5c 0a 20 20 73 | backspa|ce\\. s|
|000050c0| 6f 68 20 20 20 20 20 20 | 20 20 26 30 30 31 26 20 |oh | &001& |
|000050d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 26 20 20 | | & |
|000050e0| 68 74 20 20 20 20 20 20 | 20 20 20 26 30 31 31 20 |ht | &011 |
|000050f0| 20 20 20 20 20 26 20 74 | 61 62 5c 5c 0a 20 20 73 | & t|ab\\. s|
|00005100| 74 78 20 20 20 20 20 20 | 20 20 26 30 30 32 26 20 |tx | &002& |
|00005110| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 26 20 20 | | & |
|00005120| 6e 6c 20 20 20 20 20 20 | 20 20 20 26 30 31 32 20 |nl | &012 |
|00005130| 20 20 20 20 20 26 20 6e | 65 77 6c 69 6e 65 5c 5c | & n|ewline\\|
|00005140| 0a 20 20 65 74 78 20 20 | 20 20 20 20 20 20 26 30 |. etx | &0|
|00005150| 30 33 26 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |03& | |
|00005160| 20 26 20 20 76 74 20 20 | 20 20 20 20 20 20 20 26 | & vt | &|
|00005170| 30 31 33 26 5c 5c 0a 20 | 20 65 6f 74 20 20 20 20 |013&\\. | eot |
|00005180| 20 20 20 20 26 30 30 34 | 26 20 20 20 20 20 20 20 | &004|& |
|00005190| 20 20 20 20 20 20 20 26 | 20 20 6e 70 20 20 20 20 | &| np |
|000051a0| 20 20 20 20 20 26 30 31 | 34 20 20 20 20 20 20 26 | &01|4 &|
|000051b0| 20 70 61 67 65 5c 5c 0a | 20 20 65 6e 71 20 20 20 | page\\.| enq |
|000051c0| 20 20 20 20 20 26 30 30 | 35 26 20 20 20 20 20 20 | &00|5& |
|000051d0| 20 20 20 20 20 20 20 20 | 26 20 20 63 72 20 20 20 | |& cr |
|000051e0| 20 20 20 20 20 20 26 30 | 31 35 20 20 20 20 20 20 | &0|15 |
|000051f0| 26 20 72 65 74 75 72 6e | 5c 5c 0a 20 20 61 63 6b |& return|\\. ack|
|00005200| 20 20 20 20 20 20 20 20 | 26 30 30 36 26 20 20 20 | |&006& |
|00005210| 20 20 20 20 20 20 20 20 | 20 20 20 26 20 20 73 6f | | & so|
|00005220| 20 20 20 20 20 20 20 20 | 20 26 30 31 36 26 5c 5c | | &016&\\|
|00005230| 0a 20 20 62 65 6c 20 20 | 20 20 20 20 20 20 26 30 |. bel | &0|
|00005240| 30 37 20 20 20 20 20 20 | 20 26 20 62 65 6c 6c 20 |07 | & bell |
|00005250| 20 26 20 20 73 69 20 20 | 20 20 20 20 20 20 20 26 | & si | &|
|00005260| 30 31 37 26 5c 5c 5b 32 | 6d 6d 5d 0a 25 25 25 25 |017&\\[2|mm].%%%%|
|00005270| 25 0a 20 20 64 6c 65 20 | 20 20 20 20 20 20 20 26 |%. dle | &|
|00005280| 30 32 30 26 20 20 20 20 | 20 20 20 20 20 20 20 20 |020& | |
|00005290| 20 20 26 20 20 63 61 6e | 20 20 20 20 20 20 20 20 | & can| |
|000052a0| 26 30 33 30 26 5c 5c 0a | 20 20 64 63 31 20 20 20 |&030&\\.| dc1 |
|000052b0| 20 20 20 20 20 26 30 32 | 31 26 20 20 20 20 20 20 | &02|1& |
|000052c0| 20 20 20 20 20 20 20 20 | 26 20 20 65 6d 20 20 20 | |& em |
|000052d0| 20 20 20 20 20 20 26 30 | 33 31 26 5c 5c 0a 20 20 | &0|31&\\. |
|000052e0| 64 63 32 20 20 20 20 20 | 20 20 20 26 30 32 32 26 |dc2 | &022&|
|000052f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 26 20 | | & |
|00005300| 20 73 75 62 20 20 20 20 | 20 20 20 20 26 30 33 32 | sub | &032|
|00005310| 26 5c 5c 0a 20 20 64 63 | 33 20 20 20 20 20 20 20 |&\\. dc|3 |
|00005320| 20 26 30 32 33 26 20 20 | 20 20 20 20 20 20 20 20 | &023& | |
|00005330| 20 20 20 20 26 20 20 65 | 73 63 20 20 20 20 20 20 | & e|sc |
|00005340| 20 20 26 30 33 33 20 20 | 20 20 20 20 26 20 65 73 | &033 | & es|
|00005350| 63 61 70 65 5c 5c 0a 20 | 20 64 63 34 20 20 20 20 |cape\\. | dc4 |
|00005360| 20 20 20 20 26 30 32 34 | 26 20 20 20 20 20 20 20 | &024|& |
|00005370| 20 20 20 20 20 20 20 26 | 20 20 66 73 20 20 20 20 | &| fs |
|00005380| 20 20 20 20 20 26 30 33 | 34 26 5c 5c 0a 20 20 6e | &03|4&\\. n|
|00005390| 61 6b 20 20 20 20 20 20 | 20 20 26 30 32 35 26 20 |ak | &025& |
|000053a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 26 20 20 | | & |
|000053b0| 67 73 20 20 20 20 20 20 | 20 20 20 26 30 33 35 26 |gs | &035&|
|000053c0| 5c 5c 0a 20 20 73 79 6e | 20 20 20 20 20 20 20 20 |\\. syn| |
|000053d0| 26 30 32 36 26 20 20 20 | 20 20 20 20 20 20 20 20 |&026& | |
|000053e0| 20 20 20 26 20 20 72 73 | 20 20 20 20 20 20 20 20 | & rs| |
|000053f0| 20 26 30 33 36 26 5c 5c | 0a 20 20 65 74 62 20 20 | &036&\\|. etb |
|00005400| 20 20 20 20 20 20 26 30 | 32 37 26 20 20 20 20 20 | &0|27& |
|00005410| 20 20 20 20 20 20 20 20 | 20 26 20 20 75 73 20 20 | | & us |
|00005420| 20 20 20 20 20 20 20 26 | 30 33 37 26 5c 5c 5b 32 | &|037&\\[2|
|00005430| 6d 6d 5d 0a 25 25 25 25 | 25 0a 20 20 73 70 20 20 |mm].%%%%|%. sp |
|00005440| 20 20 20 20 20 20 20 26 | 30 34 30 20 20 20 20 20 | &|040 |
|00005450| 20 20 26 20 73 70 61 63 | 65 26 26 26 5c 5c 5b 32 | & spac|e&&&\\[2|
|00005460| 6d 6d 5d 0a 25 25 25 25 | 25 0a 20 20 64 65 6c 20 |mm].%%%%|%. del |
|00005470| 20 20 20 20 20 20 20 26 | 31 37 37 20 20 20 20 20 | &|177 |
|00005480| 20 20 26 20 64 65 6c 65 | 74 65 26 26 26 5c 5c 0a | & dele|te&&&\\.|
|00005490| 5c 68 6c 69 6e 65 0a 5c | 65 6e 64 7b 74 61 62 75 |\hline.\|end{tabu|
|000054a0| 6c 61 72 7d 0a 5c 65 6e | 64 7b 63 65 6e 74 65 72 |lar}.\en|d{center|
|000054b0| 7d 0a 7d 0a 5c 63 61 70 | 74 69 6f 6e 20 7b 56 61 |}.}.\cap|tion {Va|
|000054c0| 6c 69 64 20 63 68 61 72 | 61 63 74 65 72 20 6e 61 |lid char|acter na|
|000054d0| 6d 65 73 20 7d 0a 5c 65 | 6e 64 7b 74 61 62 6c 65 |mes }.\e|nd{table|
|000054e0| 7d 0a 0a 5c 62 65 67 69 | 6e 7b 65 6e 74 72 79 7d |}..\begi|n{entry}|
|000054f0| 7b 25 0a 5c 70 72 6f 74 | 6f 7b 63 68 61 72 3f 7d |{%.\prot|o{char?}|
|00005500| 7b 20 6f 62 6a 7d 7b 70 | 72 6f 63 65 64 75 72 65 |{ obj}{p|rocedure|
|00005510| 7d 0a 5c 70 72 6f 74 6f | 7b 63 68 61 72 3d 3f 7d |}.\proto|{char=?}|
|00005520| 7b 20 5c 76 61 72 69 7b | 63 68 61 72 7d 20 5c 76 |{ \vari{|char} \v|
|00005530| 61 72 69 69 7b 63 68 61 | 72 7d 7d 7b 70 72 6f 63 |arii{cha|r}}{proc|
|00005540| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 63 68 |edure}.\|proto{ch|
|00005550| 61 72 3c 3f 7d 7b 20 5c | 76 61 72 69 7b 63 68 61 |ar<?}{ \|vari{cha|
|00005560| 72 7d 20 5c 76 61 72 69 | 69 7b 63 68 61 72 7d 7d |r} \vari|i{char}}|
|00005570| 7b 70 72 6f 63 65 64 75 | 72 65 7d 0a 5c 70 72 6f |{procedu|re}.\pro|
|00005580| 74 6f 7b 63 68 61 72 3e | 3f 7d 7b 20 5c 76 61 72 |to{char>|?}{ \var|
|00005590| 69 7b 63 68 61 72 7d 20 | 5c 76 61 72 69 69 7b 63 |i{char} |\varii{c|
|000055a0| 68 61 72 7d 7d 7b 70 72 | 6f 63 65 64 75 72 65 7d |har}}{pr|ocedure}|
|000055b0| 0a 5c 70 72 6f 74 6f 7b | 63 68 61 72 3c 3d 3f 7d |.\proto{|char<=?}|
|000055c0| 7b 20 5c 76 61 72 69 7b | 63 68 61 72 7d 20 5c 76 |{ \vari{|char} \v|
|000055d0| 61 72 69 69 7b 63 68 61 | 72 7d 7d 7b 70 72 6f 63 |arii{cha|r}}{proc|
|000055e0| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 63 68 |edure}.\|proto{ch|
|000055f0| 61 72 3e 3d 3f 7d 7b 20 | 5c 76 61 72 69 7b 63 68 |ar>=?}{ |\vari{ch|
|00005600| 61 72 7d 20 5c 76 61 72 | 69 69 7b 63 68 61 72 7d |ar} \var|ii{char}|
|00005610| 7d 7b 70 72 6f 63 65 64 | 75 72 65 7d 0a 5c 70 72 |}{proced|ure}.\pr|
|00005620| 6f 74 6f 7b 63 68 61 72 | 2d 63 69 3d 3f 7d 7b 20 |oto{char|-ci=?}{ |
|00005630| 5c 76 61 72 69 7b 63 68 | 61 72 7d 20 5c 76 61 72 |\vari{ch|ar} \var|
|00005640| 69 69 7b 63 68 61 72 7d | 7d 7b 70 72 6f 63 65 64 |ii{char}|}{proced|
|00005650| 75 72 65 7d 0a 5c 70 72 | 6f 74 6f 7b 63 68 61 72 |ure}.\pr|oto{char|
|00005660| 2d 63 69 3c 3f 7d 7b 20 | 5c 76 61 72 69 7b 63 68 |-ci<?}{ |\vari{ch|
|00005670| 61 72 7d 20 5c 76 61 72 | 69 69 7b 63 68 61 72 7d |ar} \var|ii{char}|
|00005680| 7d 7b 70 72 6f 63 65 64 | 75 72 65 7d 0a 5c 70 72 |}{proced|ure}.\pr|
|00005690| 6f 74 6f 7b 63 68 61 72 | 2d 63 69 3e 3f 7d 7b 20 |oto{char|-ci>?}{ |
|000056a0| 5c 76 61 72 69 7b 63 68 | 61 72 7d 20 5c 76 61 72 |\vari{ch|ar} \var|
|000056b0| 69 69 7b 63 68 61 72 7d | 7d 7b 70 72 6f 63 65 64 |ii{char}|}{proced|
|000056c0| 75 72 65 7d 0a 5c 70 72 | 6f 74 6f 7b 63 68 61 72 |ure}.\pr|oto{char|
|000056d0| 2d 63 69 3c 3d 3f 7d 7b | 20 5c 76 61 72 69 7b 63 |-ci<=?}{| \vari{c|
|000056e0| 68 61 72 7d 20 5c 76 61 | 72 69 69 7b 63 68 61 72 |har} \va|rii{char|
|000056f0| 7d 7d 7b 70 72 6f 63 65 | 64 75 72 65 7d 0a 5c 70 |}}{proce|dure}.\p|
|00005700| 72 6f 74 6f 7b 63 68 61 | 72 2d 63 69 3e 3d 3f 7d |roto{cha|r-ci>=?}|
|00005710| 7b 20 5c 76 61 72 69 7b | 63 68 61 72 7d 20 5c 76 |{ \vari{|char} \v|
|00005720| 61 72 69 69 7b 63 68 61 | 72 7d 7d 7b 70 72 6f 63 |arii{cha|r}}{proc|
|00005730| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 63 68 |edure}.\|proto{ch|
|00005740| 61 72 2d 61 6c 70 68 61 | 62 65 74 69 63 3f 7d 7b |ar-alpha|betic?}{|
|00005750| 20 63 68 61 72 7d 7b 70 | 72 6f 63 65 64 75 72 65 | char}{p|rocedure|
|00005760| 7d 0a 5c 70 72 6f 74 6f | 7b 63 68 61 72 2d 6e 75 |}.\proto|{char-nu|
|00005770| 6d 65 72 69 63 3f 7d 7b | 20 63 68 61 72 7d 7b 70 |meric?}{| char}{p|
|00005780| 72 6f 63 65 64 75 72 65 | 7d 0a 5c 70 72 6f 74 6f |rocedure|}.\proto|
|00005790| 7b 63 68 61 72 2d 77 68 | 69 74 65 73 70 61 63 65 |{char-wh|itespace|
|000057a0| 3f 7d 7b 20 63 68 61 72 | 7d 7b 70 72 6f 63 65 64 |?}{ char|}{proced|
|000057b0| 75 72 65 7d 0a 5c 70 72 | 6f 74 6f 7b 63 68 61 72 |ure}.\pr|oto{char|
|000057c0| 2d 75 70 70 65 72 2d 63 | 61 73 65 3f 7d 7b 20 6c |-upper-c|ase?}{ l|
|000057d0| 65 74 74 65 72 7d 7b 70 | 72 6f 63 65 64 75 72 65 |etter}{p|rocedure|
|000057e0| 7d 0a 5c 70 72 6f 74 6f | 7b 63 68 61 72 2d 6c 6f |}.\proto|{char-lo|
|000057f0| 77 65 72 2d 63 61 73 65 | 3f 7d 7b 20 6c 65 74 74 |wer-case|?}{ lett|
|00005800| 65 72 7d 7b 70 72 6f 63 | 65 64 75 72 65 7d 0a 5c |er}{proc|edure}.\|
|00005810| 70 72 6f 74 6f 7b 63 68 | 61 72 2d 3e 69 6e 74 65 |proto{ch|ar->inte|
|00005820| 67 65 72 7d 7b 20 63 68 | 61 72 7d 7b 70 72 6f 63 |ger}{ ch|ar}{proc|
|00005830| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 69 6e |edure}.\|proto{in|
|00005840| 74 65 67 65 72 2d 3e 63 | 68 61 72 7d 7b 20 5c 76 |teger->c|har}{ \v|
|00005850| 72 7b 6e 7d 7d 7b 70 72 | 6f 63 65 64 75 72 65 7d |r{n}}{pr|ocedure}|
|00005860| 0a 5c 70 72 6f 74 6f 7b | 63 68 61 72 2d 75 70 63 |.\proto{|char-upc|
|00005870| 61 73 65 7d 7b 20 63 68 | 61 72 7d 7b 70 72 6f 63 |ase}{ ch|ar}{proc|
|00005880| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 63 68 |edure}.\|proto{ch|
|00005890| 61 72 2d 64 6f 77 6e 63 | 61 73 65 7d 7b 20 63 68 |ar-downc|ase}{ ch|
|000058a0| 61 72 7d 7b 70 72 6f 63 | 65 64 75 72 65 7d 7d 0a |ar}{proc|edure}}.|
|000058b0| 5c 73 61 75 74 0a 5c 64 | 6f 63 0a 5c 65 6e 64 7b |\saut.\d|oc.\end{|
|000058c0| 65 6e 74 72 79 7d 0a 0a | 5c 73 75 62 73 65 63 74 |entry}..|\subsect|
|000058d0| 69 6f 6e 7b 53 74 72 69 | 6e 67 73 7d 0a 0a 7b 5c |ion{Stri|ngs}..{\|
|000058e0| 73 74 6b 7d 20 73 74 72 | 69 6e 67 20 63 6f 6e 73 |stk} str|ing cons|
|000058f0| 74 61 6e 74 73 20 61 6c | 6c 6f 77 20 74 68 65 20 |tants al|low the |
|00005900| 69 6e 73 65 72 74 69 6f | 6e 20 6f 66 20 61 72 62 |insertio|n of arb|
|00005910| 69 74 72 61 72 79 20 63 | 68 61 72 61 63 74 65 72 |itrary c|haracter|
|00005920| 73 20 62 79 0a 65 6e 63 | 6f 64 69 6e 67 20 74 68 |s by.enc|oding th|
|00005930| 65 6d 20 61 73 20 65 73 | 63 61 70 65 20 73 65 71 |em as es|cape seq|
|00005940| 75 65 6e 63 65 73 2c 20 | 69 6e 74 72 6f 64 75 63 |uences, |introduc|
|00005950| 65 64 20 62 79 20 61 20 | 62 61 63 6b 73 6c 61 73 |ed by a |backslas|
|00005960| 68 0a 28 5c 62 61 63 6b | 77 68 61 63 6b 7b 7d 29 |h.(\back|whack{})|
|00005970| 2e 20 20 54 68 65 20 76 | 61 6c 69 64 20 65 73 63 |. The v|alid esc|
|00005980| 61 70 65 20 73 65 71 75 | 65 6e 63 65 73 20 61 72 |ape sequ|ences ar|
|00005990| 65 20 73 68 6f 77 6e 20 | 69 6e 20 54 61 62 6c 65 |e shown |in Table|
|000059a0| 20 32 2e 20 46 6f 72 0a | 69 6e 73 74 61 6e 63 65 | 2. For.|instance|
|000059b0| 2c 20 74 68 65 20 73 74 | 72 69 6e 67 0a 0a 5c 62 |, the st|ring..\b|
|000059c0| 65 67 69 6e 7b 73 63 68 | 65 6d 65 7d 0a 22 61 62 |egin{sch|eme}."ab|
|000059d0| 5c 62 61 63 6b 77 68 61 | 63 6b 7b 7d 30 34 30 63 |\backwha|ck{}040c|
|000059e0| 5c 62 61 63 6b 77 68 61 | 63 6b 7b 7d 6e 64 5c 62 |\backwha|ck{}nd\b|
|000059f0| 61 63 6b 77 68 61 63 6b | 7b 7d 0a 65 22 0a 5c 65 |ackwhack|{}.e".\e|
|00005a00| 6e 64 7b 73 63 68 65 6d | 65 7d 0a 69 73 20 74 68 |nd{schem|e}.is th|
|00005a10| 65 20 73 74 72 69 6e 67 | 20 63 6f 6e 73 69 73 74 |e string| consist|
|00005a20| 69 6e 67 20 6f 66 20 74 | 68 65 20 63 68 61 72 61 |ing of t|he chara|
|00005a30| 63 74 65 72 73 20 5c 73 | 68 61 72 70 73 69 67 6e |cters \s|harpsign|
|00005a40| 5c 62 61 63 6b 77 68 61 | 63 6b 7b 61 7d 2c 20 0a |\backwha|ck{a}, .|
|00005a50| 5c 73 68 61 72 70 73 69 | 67 6e 5c 62 61 63 6b 77 |\sharpsi|gn\backw|
|00005a60| 68 61 63 6b 7b 62 7d 2c | 5c 73 68 61 72 70 73 69 |hack{b},|\sharpsi|
|00005a70| 67 6e 5c 62 61 63 6b 77 | 68 61 63 6b 7b 73 70 61 |gn\backw|hack{spa|
|00005a80| 63 65 7d 2c 20 5c 73 68 | 61 72 70 73 69 67 6e 5c |ce}, \sh|arpsign\|
|00005a90| 62 61 63 6b 77 68 61 63 | 6b 7b 63 7d 2c 0a 5c 73 |backwhac|k{c},.\s|
|00005aa0| 68 61 72 70 73 69 67 6e | 5c 62 61 63 6b 77 68 61 |harpsign|\backwha|
|00005ab0| 63 6b 7b 6e 65 77 6c 69 | 6e 65 7d 2c 20 5c 73 68 |ck{newli|ne}, \sh|
|00005ac0| 61 72 70 73 69 67 6e 5c | 62 61 63 6b 77 68 61 63 |arpsign\|backwhac|
|00005ad0| 6b 7b 64 7d 20 61 6e 64 | 20 5c 73 68 61 72 70 73 |k{d} and| \sharps|
|00005ae0| 69 67 6e 5c 62 61 63 6b | 77 68 61 63 6b 7b 65 7d |ign\back|whack{e}|
|00005af0| 2e 0a 0a 5c 62 65 67 69 | 6e 7b 74 61 62 6c 65 7d |...\begi|n{table}|
|00005b00| 5b 74 5d 0a 7b 5c 73 6d | 61 6c 6c 0a 5c 62 65 67 |[t].{\sm|all.\beg|
|00005b10| 69 6e 7b 63 65 6e 74 65 | 72 7d 0a 5c 62 65 67 69 |in{cente|r}.\begi|
|00005b20| 6e 7b 74 61 62 75 6c 61 | 72 7d 7b 7c 6c 7c 6c 7c |n{tabula|r}{|l|l||
|00005b30| 7d 20 5c 68 6c 69 6e 65 | 0a 5c 6d 75 6c 74 69 63 |} \hline|.\multic|
|00005b40| 6f 6c 75 6d 6e 7b 31 7d | 7b 7c 63 7c 7d 7b 5c 65 |olumn{1}|{|c|}{\e|
|00005b50| 6d 20 53 65 71 75 65 6e | 63 65 7d 26 5c 6d 75 6c |m Sequen|ce}&\mul|
|00005b60| 74 69 63 6f 6c 75 6d 6e | 7b 31 7d 7b 7c 63 7c 7d |ticolumn|{1}{|c|}|
|00005b70| 7b 5c 65 6d 20 43 68 61 | 72 61 63 74 65 72 20 69 |{\em Cha|racter i|
|00005b80| 6e 73 65 72 74 65 64 7d | 5c 5c 0a 5c 68 6c 69 6e |nserted}|\\.\hlin|
|00005b90| 65 0a 5c 62 61 63 6b 77 | 68 61 63 6b 7b 62 7d 26 |e.\backw|hack{b}&|
|00005ba0| 20 42 61 63 6b 73 70 61 | 63 65 20 5c 5c 0a 5c 62 | Backspa|ce \\.\b|
|00005bb0| 61 63 6b 77 68 61 63 6b | 7b 65 7d 26 20 45 73 63 |ackwhack|{e}& Esc|
|00005bc0| 61 70 65 20 5c 5c 0a 5c | 62 61 63 6b 77 68 61 63 |ape \\.\|backwhac|
|00005bd0| 6b 7b 6e 7d 26 20 4e 65 | 77 6c 69 6e 65 20 5c 5c |k{n}& Ne|wline \\|
|00005be0| 0a 5c 62 61 63 6b 77 68 | 61 63 6b 7b 74 7d 26 20 |.\backwh|ack{t}& |
|00005bf0| 48 6f 72 69 7a 6f 6e 74 | 61 6c 20 54 61 62 20 5c |Horizont|al Tab \|
|00005c00| 5c 0a 5c 62 61 63 6b 77 | 68 61 63 6b 7b 6e 7d 26 |\.\backw|hack{n}&|
|00005c10| 20 43 61 72 72 69 61 67 | 65 20 52 65 74 75 72 6e | Carriag|e Return|
|00005c20| 20 5c 5c 0a 5c 62 61 63 | 6b 77 68 61 63 6b 7b 30 | \\.\bac|kwhack{0|
|00005c30| 61 62 63 7d 26 20 41 53 | 43 49 49 20 63 68 61 72 |abc}& AS|CII char|
|00005c40| 61 63 74 65 72 20 77 69 | 74 68 20 6f 63 74 61 6c |acter wi|th octal|
|00005c50| 20 76 61 6c 75 65 20 61 | 62 63 20 5c 5c 0a 5c 62 | value a|bc \\.\b|
|00005c60| 61 63 6b 77 68 61 63 6b | 7b 5c 74 74 3c 6e 65 77 |ackwhack|{\tt<new|
|00005c70| 6c 69 6e 65 3e 7d 26 20 | 4e 6f 6e 65 20 28 70 65 |line>}& |None (pe|
|00005c80| 72 6d 69 74 73 20 74 6f | 20 65 6e 74 65 72 20 61 |rmits to| enter a|
|00005c90| 20 73 74 72 69 6e 67 20 | 6f 6e 20 73 65 76 65 72 | string |on sever|
|00005ca0| 61 6c 20 6c 69 6e 65 73 | 29 5c 5c 0a 5c 62 61 63 |al lines|)\\.\bac|
|00005cb0| 6b 77 68 61 63 6b 7b 5c | 74 74 3c 6f 74 68 65 72 |kwhack{\|tt<other|
|00005cc0| 3e 7d 26 20 7b 5c 74 74 | 3c 6f 74 68 65 72 3e 7d |>}& {\tt|<other>}|
|00005cd0| 5c 5c 0a 5c 68 6c 69 6e | 65 0a 5c 65 6e 64 7b 74 |\\.\hlin|e.\end{t|
|00005ce0| 61 62 75 6c 61 72 7d 0a | 5c 65 6e 64 7b 63 65 6e |abular}.|\end{cen|
|00005cf0| 74 65 72 7d 0a 7d 0a 5c | 63 61 70 74 69 6f 6e 20 |ter}.}.\|caption |
|00005d00| 7b 53 74 72 69 6e 67 20 | 65 73 63 61 70 65 20 73 |{String |escape s|
|00005d10| 65 71 75 65 6e 63 65 73 | 7d 0a 5c 65 6e 64 7b 74 |equences|}.\end{t|
|00005d20| 61 62 6c 65 7d 0a 0a 5c | 62 65 67 69 6e 7b 65 6e |able}..\|begin{en|
|00005d30| 74 72 79 7d 7b 25 0a 5c | 70 72 6f 74 6f 7b 73 74 |try}{%.\|proto{st|
|00005d40| 72 69 6e 67 3f 7d 7b 20 | 6f 62 6a 7d 7b 70 72 6f |ring?}{ |obj}{pro|
|00005d50| 63 65 64 75 72 65 7d 0a | 5c 70 72 6f 74 6f 7b 6d |cedure}.|\proto{m|
|00005d60| 61 6b 65 2d 73 74 72 69 | 6e 67 7d 7b 20 5c 76 72 |ake-stri|ng}{ \vr|
|00005d70| 7b 6b 7d 7d 7b 70 72 6f | 63 65 64 75 72 65 7d 0a |{k}}{pro|cedure}.|
|00005d80| 5c 70 72 6f 74 6f 7b 6d | 61 6b 65 2d 73 74 72 69 |\proto{m|ake-stri|
|00005d90| 6e 67 7d 7b 20 5c 76 72 | 7b 6b 7d 20 63 68 61 72 |ng}{ \vr|{k} char|
|00005da0| 7d 7b 70 72 6f 63 65 64 | 75 72 65 7d 0a 5c 70 72 |}{proced|ure}.\pr|
|00005db0| 6f 74 6f 7b 73 74 72 69 | 6e 67 7d 7b 20 63 68 61 |oto{stri|ng}{ cha|
|00005dc0| 72 20 5c 64 6f 74 73 66 | 6f 6f 7d 7b 70 72 6f 63 |r \dotsf|oo}{proc|
|00005dd0| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 73 74 |edure}.\|proto{st|
|00005de0| 72 69 6e 67 2d 6c 65 6e | 67 74 68 7d 7b 20 73 74 |ring-len|gth}{ st|
|00005df0| 72 69 6e 67 7d 7b 70 72 | 6f 63 65 64 75 72 65 7d |ring}{pr|ocedure}|
|00005e00| 0a 5c 70 72 6f 74 6f 7b | 73 74 72 69 6e 67 2d 72 |.\proto{|string-r|
|00005e10| 65 66 7d 7b 20 73 74 72 | 69 6e 67 20 5c 76 72 7b |ef}{ str|ing \vr{|
|00005e20| 6b 7d 7d 7b 70 72 6f 63 | 65 64 75 72 65 7d 0a 5c |k}}{proc|edure}.\|
|00005e30| 70 72 6f 74 6f 7b 73 74 | 72 69 6e 67 2d 73 65 74 |proto{st|ring-set|
|00005e40| 21 7d 7b 20 73 74 72 69 | 6e 67 20 6b 20 63 68 61 |!}{ stri|ng k cha|
|00005e50| 72 7d 7b 70 72 6f 63 65 | 64 75 72 65 7d 0a 5c 70 |r}{proce|dure}.\p|
|00005e60| 72 6f 74 6f 7b 73 74 72 | 69 6e 67 3d 3f 7d 7b 20 |roto{str|ing=?}{ |
|00005e70| 5c 76 61 72 69 7b 73 74 | 72 69 6e 67 7d 20 5c 76 |\vari{st|ring} \v|
|00005e80| 61 72 69 69 7b 73 74 72 | 69 6e 67 7d 7d 7b 70 72 |arii{str|ing}}{pr|
|00005e90| 6f 63 65 64 75 72 65 7d | 0a 5c 70 72 6f 74 6f 7b |ocedure}|.\proto{|
|00005ea0| 73 74 72 69 6e 67 2d 63 | 69 3d 3f 7d 7b 20 5c 76 |string-c|i=?}{ \v|
|00005eb0| 61 72 69 7b 73 74 72 69 | 6e 67 7d 20 5c 76 61 72 |ari{stri|ng} \var|
|00005ec0| 69 69 7b 73 74 72 69 6e | 67 7d 7d 7b 70 72 6f 63 |ii{strin|g}}{proc|
|00005ed0| 65 64 75 72 65 7d 0a 5c | 70 72 6f 74 6f 7b 73 74 |edure}.\|proto{st|
|00005ee0| 72 69 6e 67 3c 3f 7d 7b | 20 5c 76 61 72 69 7b 73 |ring<?}{| \vari{s|
|00005ef0| 74 72 69 6e 67 7d 20 5c | 76 61 72 69 69 7b 73 74 |tring} \|varii{st|
|00005f00| 72 69 6e 67 7d 7d 7b 70 | 72 6f 63 65 64 75 72 65 |ring}}{p|rocedure|
|00005f10| 7d 0a 5c 70 72 6f 74 6f | 7b 73 74 72 69 6e 67 3e |}.\proto|{string>|
|00005f20| 3f 7d 7b 20 5c 76 61 72 | 69 7b 73 74 72 69 6e 67 |?}{ \var|i{string|
|00005f30| 7d 20 5c 76 61 72 69 69 | 7b 73 74 72 69 6e 67 7d |} \varii|{string}|
|00005f40| 7d 7b 70 72 6f 63 65 64 | 75 72 65 7d 0a 5c 70 72 |}{proced|ure}.\pr|
|00005f50| 6f 74 6f 7b 73 74 72 69 | 6e 67 3c 3d 3f 7d 7b 20 |oto{stri|ng<=?}{ |
|00005f60| 5c 76 61 72 69 7b 73 74 | 72 69 6e 67 7d 20 5c 76 |\vari{st|ring} \v|
|00005f70| 61 72 69 69 7b 73 74 72 | 69 6e 67 7d 7d 7b 70 72 |arii{str|ing}}{pr|
|00005f80| 6f 63 65 64 75 72 65 7d | 0a 5c 70 72 6f 74 6f 7b |ocedure}|.\proto{|
|00005f90| 73 74 72 69 6e 67 3e 3d | 3f 7d 7b 20 5c 76 61 72 |string>=|?}{ \var|
|00005fa0| 69 7b 73 74 72 69 6e 67 | 7d 20 5c 76 61 72 69 69 |i{string|} \varii|
|00005fb0| 7b 73 74 72 69 6e 67 7d | 7d 7b 70 72 6f 63 65 64 |{string}|}{proced|
|00005fc0| 75 72 65 7d 0a 5c 70 72 | 6f 74 6f 7b 73 74 72 69 |ure}.\pr|oto{stri|
|00005fd0| 6e 67 2d 63 69 3c 3f 7d | 7b 20 5c 76 61 72 69 7b |ng-ci<?}|{ \vari{|
|00005fe0| 73 74 72 69 6e 67 7d 20 | 5c 76 61 72 69 69 7b 73 |string} |\varii{s|
|00005ff0| 74 72 69 6e 67 7d 7d 7b | 70 72 6f 63 65 64 75 72 |tring}}{|procedur|
|00006000| 65 7d 0a 5c 70 72 6f 74 | 6f 7b 73 74 72 69 6e 67 |e}.\prot|o{string|
|00006010| 2d 63 69 3e 3f 7d 7b 20 | 5c 76 61 72 69 7b 73 74 |-ci>?}{ |\vari{st|
|00006020| 72 69 6e 67 7d 20 5c 76 | 61 72 69 69 7b 73 74 72 |ring} \v|arii{str|
|00006030| 69 6e 67 7d 7d 7b 70 72 | 6f 63 65 64 75 72 65 7d |ing}}{pr|ocedure}|
|00006040| 0a 5c 70 72 6f 74 6f 7b | 73 74 72 69 6e 67 2d 63 |.\proto{|string-c|
|00006050| 69 3c 3d 3f 7d 7b 20 5c | 76 61 72 69 7b 73 74 72 |i<=?}{ \|vari{str|
|00006060| 69 6e 67 7d 20 5c 76 61 | 72 69 69 7b 73 74 72 69 |ing} \va|rii{stri|
|00006070| 6e 67 7d 7d 7b 70 72 6f | 63 65 64 75 72 65 7d 0a |ng}}{pro|cedure}.|
|00006080| 5c 70 72 6f 74 6f 7b 73 | 74 72 69 6e 67 2d 63 69 |\proto{s|tring-ci|
|00006090| 3e 3d 3f 7d 7b 20 5c 76 | 61 72 69 7b 73 74 72 69 |>=?}{ \v|ari{stri|
|000060a0| 6e 67 7d 20 5c 76 61 72 | 69 69 7b 73 74 72 69 6e |ng} \var|ii{strin|
|000060b0| 67 7d 7d 7b 70 72 6f 63 | 65 64 75 72 65 7d 0a 5c |g}}{proc|edure}.\|
|000060c0| 70 72 6f 74 6f 7b 73 75 | 62 73 74 72 69 6e 67 7d |proto{su|bstring}|
|000060d0| 7b 20 73 74 72 69 6e 67 | 20 73 74 61 72 74 20 65 |{ string| start e|
|000060e0| 6e 64 7d 7b 70 72 6f 63 | 65 64 75 72 65 7d 0a 5c |nd}{proc|edure}.\|
|000060f0| 70 72 6f 74 6f 7b 73 74 | 72 69 6e 67 2d 61 70 70 |proto{st|ring-app|
|00006100| 65 6e 64 7d 7b 20 5c 76 | 61 72 7b 73 74 72 69 6e |end}{ \v|ar{strin|
|00006110| 67 7d 20 5c 64 6f 74 73 | 66 6f 6f 7d 7b 70 72 6f |g} \dots|foo}{pro|
|00006120| 63 65 64 75 72 65 7d 0a | 5c 70 72 6f 74 6f 7b 73 |cedure}.|\proto{s|
|00006130| 74 72 69 6e 67 2d 3e 6c | 69 73 74 7d 7b 20 73 74 |tring->l|ist}{ st|
|00006140| 72 69 6e 67 7d 7b 70 72 | 6f 63 65 64 75 72 65 7d |ring}{pr|ocedure}|
|00006150| 0a 5c 70 72 6f 74 6f 7b | 6c 69 73 74 2d 3e 73 74 |.\proto{|list->st|
|00006160| 72 69 6e 67 7d 7b 20 63 | 68 61 72 73 7d 7b 70 72 |ring}{ c|hars}{pr|
|00006170| 6f 63 65 64 75 72 65 7d | 0a 5c 70 72 6f 74 6f 7b |ocedure}|.\proto{|
|00006180| 73 74 72 69 6e 67 2d 63 | 6f 70 79 7d 7b 20 73 74 |string-c|opy}{ st|
|00006190| 72 69 6e 67 7d 7b 70 72 | 6f 63 65 64 75 72 65 7d |ring}{pr|ocedure}|
|000061a0| 0a 5c 70 72 6f 74 6f 7b | 73 74 72 69 6e 67 2d 66 |.\proto{|string-f|
|000061b0| 69 6c 6c 21 7d 7b 20 73 | 74 72 69 6e 67 20 63 68 |ill!}{ s|tring ch|
|000061c0| 61 72 7d 7b 70 72 6f 63 | 65 64 75 72 65 7d 7d 0a |ar}{proc|edure}}.|
|000061d0| 5c 73 61 75 74 0a 5c 64 | 6f 63 0a 5c 65 6e 64 7b |\saut.\d|oc.\end{|
|000061e0| 65 6e 74 72 79 7d 0a 0a | 5c 62 65 67 69 6e 7b 65 |entry}..|\begin{e|
|000061f0| 6e 74 72 79 7d 7b 25 0a | 5c 70 72 6f 74 6f 7b 73 |ntry}{%.|\proto{s|
|00006200| 74 72 69 6e 67 2d 66 69 | 6e 64 3f 7d 7b 20 20 5c |tring-fi|nd?}{ \|
|00006210| 76 61 72 69 7b 73 74 72 | 69 6e 67 7d 20 5c 76 61 |vari{str|ing} \va|
|00006220| 72 69 69 7b 73 74 72 69 | 6e 67 7d 7d 7b 70 72 6f |rii{stri|ng}}{pro|
|00006230| 63 65 64 75 72 65 7d 7d | 0a 5c 73 61 75 74 0a 52 |cedure}}|.\saut.R|
|00006240| 65 74 75 72 6e 73 20 7b | 5c 73 63 68 74 72 75 65 |eturns {|\schtrue|
|00006250| 7d 20 69 66 20 5c 76 61 | 72 69 7b 73 74 72 69 6e |} if \va|ri{strin|
|00006260| 67 7d 20 61 70 70 65 61 | 72 73 20 73 6f 6d 65 77 |g} appea|rs somew|
|00006270| 68 65 72 65 20 69 6e 0a | 5c 76 61 72 69 69 7b 73 |here in.|\varii{s|
|00006280| 74 72 69 6e 67 7d 3b 20 | 6f 74 68 65 72 77 69 73 |tring}; |otherwis|
|00006290| 65 20 72 65 74 75 72 6e | 73 20 7b 5c 73 63 68 66 |e return|s {\schf|
|000062a0| 61 6c 73 65 7d 2e 0a 5c | 65 6e 64 7b 65 6e 74 72 |alse}..\|end{entr|
|000062b0| 79 7d 0a 0a 5c 62 65 67 | 69 6e 7b 65 6e 74 72 79 |y}..\beg|in{entry|
|000062c0| 7d 7b 25 0a 5c 70 72 6f | 74 6f 7b 73 74 72 69 6e |}{%.\pro|to{strin|
|000062d0| 67 2d 69 6e 64 65 78 7d | 7b 20 20 5c 76 61 72 69 |g-index}|{ \vari|
|000062e0| 7b 73 74 72 69 6e 67 7d | 20 5c 76 61 72 69 69 7b |{string}| \varii{|
|000062f0| 73 74 72 69 6e 67 7d 7d | 7b 70 72 6f 63 65 64 75 |string}}|{procedu|
|00006300| 72 65 7d 7d 0a 5c 73 61 | 75 74 0a 52 65 74 75 72 |re}}.\sa|ut.Retur|
|00006310| 6e 73 20 74 68 65 20 69 | 6e 64 65 78 20 6f 66 20 |ns the i|ndex of |
|00006320| 77 68 65 72 65 20 5c 76 | 61 72 69 7b 73 74 72 69 |where \v|ari{stri|
|00006330| 6e 67 7d 20 69 73 20 61 | 20 73 75 62 73 74 72 69 |ng} is a| substri|
|00006340| 6e 67 20 6f 66 0a 5c 76 | 61 72 69 69 7b 73 74 72 |ng of.\v|arii{str|
|00006350| 69 6e 67 7d 20 69 66 20 | 69 74 20 65 78 69 73 74 |ing} if |it exist|
|00006360| 73 3b 20 72 65 74 75 72 | 6e 73 20 7b 5c 73 63 68 |s; retur|ns {\sch|
|00006370| 66 61 6c 73 65 7d 20 6f | 74 68 65 72 77 69 73 65 |false} o|therwise|
|00006380| 2e 0a 5c 62 65 67 69 6e | 7b 73 63 68 65 6d 65 7d |..\begin|{scheme}|
|00006390| 0a 28 73 74 72 69 6e 67 | 2d 69 6e 64 65 78 20 22 |.(string|-index "|
|000063a0| 63 61 22 20 22 61 62 72 | 61 63 61 64 61 62 72 61 |ca" "abr|acadabra|
|000063b0| 22 29 20 5c 6c 65 76 20 | 34 0a 28 73 74 72 69 6e |") \lev |4.(strin|
|000063c0| 67 2d 69 6e 64 65 78 20 | 22 62 61 22 20 22 61 62 |g-index |"ba" "ab|
|000063d0| 72 61 63 61 64 61 62 72 | 61 22 29 20 5c 6c 65 76 |racadabr|a") \lev|
|000063e0| 20 5c 73 63 68 66 61 6c | 73 65 0a 5c 65 6e 64 7b | \schfal|se.\end{|
|000063f0| 73 63 68 65 6d 65 7d 0a | 5c 65 6e 64 7b 65 6e 74 |scheme}.|\end{ent|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.